一、算术运算符
1、算术运算符
- 数学运算符也叫算术运算符,主要包括加、减、乘、除、取余(求模)。
- +:求和
- -:求差
- *:求积
- /:求商
- %:取模(取余数)
- 算术运算符执行的优先级顺序:优先级越高越先被执行,优先级相同时以书从左向右执行。
- 乘、除、取余优先级相同
- 加、减优先级相同
- 乘、除、取余优先级大于加、减
- 使用 () 可以提升优先级
- 总结: 先乘除后加减,有括号先算括号里面的
2、赋值运算符
-
说明:对变量进行赋值的运算符
- = (将等号右边的值赋予给左边, 要求左边必须是一个容器(变量))
- +=
- -=
- *=
- /=
- %=
-
使用说明:
- (num = num + 1) 简化为 (num += 1),如图所示(其他赋值运算符同理)
3、自增自减运算符
-
使用场景:经常用于计数来使用。 比如进行10次操作,用它来计算进行了多少次了
-
注意:前置自增和后置自增单独使用没有区别
1. 自增
- 符号:++
- 作用:让变量的值 +1
- 自增运算符的用法:
- 前置自增
- 每执行1次,当前变量数值加1
- 其作用相当于 num += 1
- 后置自增
- 每执行1次,当前变量数值加1
- 其作用相当于 num += 1
- 前置自增
- 前置自增与后置自增的区别
-
前自增:先自增,再参与运算(使用本次自增后的值参与运算)
-
后自增:先运算(使用本次未自增的值参与运算),本次运算结束后再自增
-
2. 自减
- 符号:--
- 作用:让变量的值 -1
- 自减运算符的用法:(使用方法和自增一样)
4、比较运算符
-
比较运算符介绍:
- 作用:比较两个数据大小,是否相等
-
比较运算符的使用:
-
> : 左边是否大于右边
-
< : 左边是否小于右边
-
>= : 左边是否大于或等于右边
-
<= : 左边是否小于或等于右边
-
== : 左右两边是否相等
-
=== : 左右两边是否类型和值都相等
-
!== : 左右两边是否类型和值都不全等
-
比较结果为boolean类型,即只会得到true或false
-
-
注意:
- === 和 !== 在进行比较时不会进行类型转换
5、逻辑运算符
-
逻辑运算符介绍:
- 逻辑运算符用来解决多重条件判断
-
逻辑运算符的使用
1. 逻辑运算符短路
- 逻辑与短路
- 根据逻辑与的口诀:找假
- 左侧为 false ,右侧没有必要再进行一次运算,所以右侧 ++a 没有被运算,相当于被短路
let a = 10 let ret = false && ++a console.log(a) //结果为10 - 逻辑或短路
- 根据逻辑与的口诀:找真
- 左侧为 true ,右侧没有必要再进行一次运算,所以右侧 ++a 没有被运算,相当于被短路
let a = 10 let ret = true || ++a console.log(a) //结果为10
2. 逻辑运算符的返回值
- 那一侧的数据能解决整个式子的结果就将那个数据返回
let ret = 10 || 20; // Boolean(10) true
console.log(ret); // 10
let num = 10 && 20; // Boolean(10) true
console.log(num); // 20
6、运算符优先级
- 一元运算符里面的逻辑非优先级很高
- 逻辑与比逻辑或优先级高
二、语句
1、表达式与语句
1. 表达式与语句的区别
-
表达式
- 表达式是由运算符组成的式子,JavaScript编译器会将其计算出一个结果(表达式一定会有运算结果)
-
语句
- 让js编译器执行某个命令(做什么事)比如: if语句 for 循环语句
-
区别:表达式计算出一个值,但语句用来自行以使某件事发生(做什么事)
- 表达式 3 + 4
- 语句 alert() 弹出对话框
-
注意:其实某些情况,也可以把表达式理解为语句,因为它是在计算结果,也是做事
2、分支语句
- 分支语句包含:
- if 分支语句
- 三元运算符
- switch 语句
1. if 语句
- if 语句介绍:if 语句有三种使用
-
单分支
-
双分支
-
多分枝
-
-
单分支使用语法:
- 括号内的条件为true时,进入大括号里执行代码
- 小括号内的结果若不是布尔类型时,会发生隐式转换转为布尔类型
-
双分支使用语法:
-
多分枝使用语法:
-
释义:
-
先判断条件1,若满足条件1就执行代码1,其他不执行
-
若不满足则向下判断条件2,满足条件2执行代码2,其他不执行
-
若依然不满足继续往下判断,依次类推
-
若以上条件都不满足,执行else里的代码n
-
-
注:可以写N个条件,但这里演示只写2个
-
- 注意:
- else if 结构可以有很多个结构
- else 也可以省略
2. 三元运算符
-
三元运算符介绍:其实是比 if 双分支 更简单的写法,有时候也叫做三元表达式
-
符号: ? 与 : 配合使用
-
语法:
-
执行逻辑:
- 首先判断 表达式 是否成立, 成立就选择 语句1执行 , 不成立就选择 语句2执行
-
注意:
- 三元运算符 的结果还可以赋值给变量
3. switch 语句
-
释义:
- 找到跟小括号里数据全等的case值,并执行里面对应的代码
- 若没有全等 === 的则执行default里的代码
- 例:数据若跟值2全等,则执行代码2
-
语法:
switch(变量){
case 值1:
代码块1
break;
case 值2:
代码块2
break;
case 值3:
代码块3
break;
default:
代码块4
break;
}
- 注意事项:
- switch case语句一般用于等值判断,不适合于区间判断
- switch case一般需要配合break关键字使用 没有break会造成case穿透
- switch后的变量与case后的值的比较于 ===,而且只能进行一次对比。