ECMASCRIPT(语法标准)
1. 能够写出简单的逻辑程序代码

2. 变量,数据类型,运算符,条件判断语句,循环语法,数组,对象,函数

1. 赋值运算符

= 将'='右侧的结果赋值给左侧的变量

a += b; 等价于 a = a + b;

a -= b; 等价于 a = a - b;

a *= b; 等价于 a = a * b;

2. 一元运算(在循环语句中会大量使用)

++

--

总结:
1. 不管是 ++ 或者是 -- 都是在原来变量值的基础上 加1 或者 减1

2. 假如将一元运算以后的结果赋值给一个变量,那么这个变量的值有区别。

例如: a = b++;

最后的结果是: a的值等于 b 加1 之前的值,b的值等于加1之后的值

特点:先赋值后计算

例如: a = ++b;

最后的结果: a的值等于b加1之后的值,b的值等于加1之后的值

特点: 先计算后赋值

3. 比较运算符

大于 >

小于 <

大于等于(大于或者等于) >=

小于等于(小于或者等于) <=

等于[注意]: == 或者 ===

不等于: != 或者 !==

总结:
1. 通过比较运算后,得到的结果就是一个布尔类型的结果(true | false)

2. ' <= || >= ' 的时候如果有一个条件成立,那么最后的结果就是true.

3. ' == ' 在比较大小的时候,只考虑值,不考虑数据类型(不完全等于)

4. ' === ' 在比较大小的时候,同时要考虑数据类型和值(全等于)

5. ' != ' 只判断值是否不相等

6. '!==' 同时判断值和数据类型

4. 逻辑运算符(条件判断语法中,循环语法中)

或运算(||): 或者(条件有一个满足即可)

1. true || false ===》 true

2. true || true ===> ture

3. false || false ===> false

且(与)运算 (&&): 并且(条件必须都满足才可以)

1. true && true ===》 true

2. false && true ===> false

3. false && false ===> false

非运算 (!): 取相反的结果

1. !true ===> false

2. !false ===> true

总结:
☞ 如果需要将多个条件联系到一块,那么需要使用逻辑运算符。

5. 条件判断语法: 根据条件是否成立执行对应的代码

☞语法结构:

if( 条件表达式 ) {

解决问题的逻辑代码(js代码)

}else {

解决问题的逻辑代码(js代码)

}

☞分析语法结构:

1. 先执行条件表达式,判断条件表达式的结果是 true 还是 false

2. 如果条件表达式的结果是 true, 那么程序只会执行 if 后面的逻辑代码,else中的代码不执行

3. 如果条件表达式的结果是 false, 那么程序只会执行 else后面的逻辑代码,if中的代码不执行

6 多条件,条件判断语法结构

☞ 语法过程

if( 条件表达式 ) {

逻辑代码。。。

}else if( 条件表达式 ) {

逻辑代码。。。
}else if ( 条件表达式 ) {

逻辑代码...

}else {
逻辑代码...
}

☞ 分析该语法结构的执行过程

1. 先判断第一个表达式是否成立(true | false)

2. 如果第一个条件成立(true), 那么程序只会执行 第一个if后面的程序,后面的所有程序不再执行

3. 如果第一个条件不成立(false),那么判断第二条件表达式是否成立,如果第二个条件成立,那么执行第二个中的逻辑代码,否则继续向下判断条件

4. 如果以上上条件都不成立,那么程序最后执行else中代码。

7. 代码断点调试(掌握): 为了调试程序,排除错误。

☞ 步骤:

1. 先运行程序

2. 打开浏览器控制台,找到 sources 选项

3. 点击对应的HTMl文件,找到对应的JS代码片段

4. 给代码设置断点(在对应的行位置处点击鼠标左键),推荐将断点设置给程序执行的第一行。

5. 再次运行程序(刷新页面)

6. 手动的让程序一行一行的执行(F10)

7. 随时监视变量中的值

7.1 将鼠标放到对应变量的身上

7.2 将变量添加到监视窗口

8. 三元运算(三元表达式)

语法:

条件表达式 ? 如果前面的表达式返回的结果是true那么就执行该位置处的代表 : 如果(false)那么执行该位置处的代码

总结:

凡是能用if .. else... 语法结构写的代码,最后都可以用三元表达式去写 (推荐用三元表达式)

9. switch语法:

语法:

switch(变量) {

case 变量中的值第一种情况:
逻辑代码
break;

case 变量中的值第二种情况:
逻辑代码
break;

default:
逻辑代码
break;
}

分析语法执行过程:

☞ 先执行switch中的变量

☞ 执行case后面的值,如果case后面的值与switch中变量的值完全相同【数据类型和值都要一样】,那么就执行对应的case后面的逻辑代码

☞ 如果case后面的值没有与switch中变量的值有相同的,那么程序最后执行default中的代码

注意:
☞ switch中变量的数据类型必须和case后面的值数据类型保持一致

☞ 每一个case结束后,必须以break结束。

☞ default中如果有逻辑代码需要处理,那么不能省略,如果没有逻辑代码需要处理,可以省略。

☞ switch中可以添加表达式,但是case后面只能跟 true 或者 false

总结:
☞ 如果程序中出现了多个条件的语法结构,可以考虑使用switch
☞ 如果条件表达式中用到的变量的值是固定的,可以考虑使用switch

javascript基础学习第二天的更多相关文章

  1. JavaScript 基础学习1-day14

    JavaScript 基础学习1 知识预览JavaScript概述二 JavaScript的基础三 JavaScript的对象BOM对象DOM对象实例练习js扩展 JavaScript概述 JavaS ...

  2. JavaScript 基础学习(二)js 和 html 的结合方式

    第一种 使用一个标签 <script type="text/javascript"> js代码; </script> 第二种 使用 script 标签,引入 ...

  3. JavaScript 基础 学习(三)

    JavaScript 基础 学习(三) 事件三要素 ​ 1.事件源: 绑定在谁身上的事件(和谁约定好) ​ 2.事件类型: 绑定一个什么事件 ​ 3.事件处理函数: 当行为发生的时候,要执行哪一个函数 ...

  4. 48.javascript基础学习

    javascript基础学习:   http://www.w3school.com.cn/jsref/index.asp jS的引入方式: 1.行间事件:为某一个具体的元素标签赋予js内容,oncli ...

  5. JavaScript 基础 学习 (四)

    JavaScript 基础 学习 (四) 解绑事件 dom级 事件解绑 ​ 元素.on事件类型 = null ​ 因为赋值的关系,所以给事件赋值为 null 的时候 ​ 事件触发的时候,就没有事件处理 ...

  6. JavaScript 基础 学习 (二)

    JavaScript 基础 学习 节点属性 ​ 每一个节点都有自己的特点 ​ 这个节点属性就记录着属于自己节点的特点 1. nodeType(以一个数字来表示这个节点类型) ​ 语法:节点.nodeT ...

  7. JavaScript 基础 学习 (一)

    JavaScript 基础 学习 获取页面中的元素的方法 作用:通过各种方式获取页面中的元素 ​ 比如:id,类名,标签名,选择器 的方式来获取元素 ​ 伪数组: ​ 长的和数组差不多,也是按照索引排 ...

  8. Mysql基础学习第二天

    Mysql基础学习第二天 函数 函数:是指一段可以直接被另一段程序调用的程序或代码. 字符串函数 数值函数 日期函数 流程函数 字符串函数 MySQL内置很多字符串函数,常用的几个如下: 函数 功能 ...

  9. 几张非常有意义的JavaScript基础学习思维图

    分享几张对于学习JavaScript基础知识非常有意义的图,无论你的JavaScript级别如何,“温故而知新”完全可以从这些图中得到. 推荐理由:归类非常好,非常全面 JavaScript 数组 J ...

随机推荐

  1. ZooKeeper学习第一期---Zookeeper简单介绍(转)

    转载来源:https://www.cnblogs.com/sunddenly/p/4033574.html 一.分布式协调技术 在给大家介绍ZooKeeper之前先来给大家介绍一种技术--分布式协调技 ...

  2. 你一定能看懂的JDK动态代理

    前言:阅读这篇文章前,一定要知道什么是代理模式,具体可以参考这篇文章<设计模式(一):代理模式>. 在<设计模式(一):代理模式>一文中说了,程序员思思买书有两种选择:一种是选 ...

  3. 支持向量机 (二): 软间隔 svm 与 核函数

    软间隔最大化(线性不可分类svm) 上一篇求解出来的间隔被称为 "硬间隔(hard margin)",其可以将所有样本点划分正确且都在间隔边界之外,即所有样本点都满足 \(y_{i ...

  4. LaTeX 中插入GIF图片

    参见博文:liam.page 和 voidcn 前提条件 安装 ImageMagick 软件 (因为要把 gif 图片转换成 png 序列),使用它的命令行工具 convert.exe 命令行下把 g ...

  5. Hive —— 安装部署

    一.安装Hive 1.1 下载并解压 下载所需版本的Hive,这里我下载版本为cdh5.15.2.下载地址:http://archive.cloudera.com/cdh5/cdh/5/ # 下载后进 ...

  6. 系统学习 Java IO (五)----使用 SequenceInputStream 组合多个流

    目录:系统学习 Java IO---- 目录,概览 SequenceInputStream 可以将两个或多个其他 InputStream 合并为一个. 首先,SequenceInputStream 将 ...

  7. 【过时】update progress has encountered a problem解决办法

    笔者第二次整理博客,已经抛弃MyEclipse了,我将公司项目转换成了idea的目录结构后大家都改换Idea进行开发,虽然我个人比较喜欢eclipse的简洁干净,但是Idea的确有很多方便开发的新功能 ...

  8. vSphere克隆虚机重启网卡报错

    使用VMware vSphere克隆虚机,修改IP重启网卡报错: 解决报错: 修改 /etc/udev/rules.d/70-persistent-net.rules 文件,克隆后会多出eth2和et ...

  9. python的输入和输出

    基本输出 python中的输出使用关键字--print,与python2不同的是,python3的输出后面必须要加括号,示例如下: python3.0以上输出: python2.0以上的输出: 格式化 ...

  10. Python基础-使用range创建数字列表以及简单的统计计算和列表解析

    1.使用函数 range() numbers = list(range[1,6]) print (numbers) 结果: [1,2,3,4,5] 使用range函数,还可以指定步长,例如,打印1~1 ...