1. 运算符(操作符)
- 运算符也被称作
操作符
,是用于实现赋值
、比较
和执行算数运算
等功能的符号编号 运算符 描述 1 +、- 、* 、/ 、% 算术运算符 2 +=、-=、*=、/=、%= 复合运算符 3 = 赋值运算符(优先级别是最低的) 4 ++、-- 一元运算符 5 ?: 三元运算符 6 >、<、>=、<=、==、===、!=、!== 关系运算符 7 &&、||、! 逻辑运算符
2. 算术运算符
-
算术运算符使用的
符号
,用于执行两个变量或值的算术运算
运算符 描述 实例 + 加 10 + 20 = 30 - 减 10 - 20 = -10 * 乘 10 * 20 = 200 / 除 10 / 20 = 0.5 % 取余(取模) 返回除法的余数 9 % 2 = 1 -
浮点数的精度问题:浮点数值的
最高精度
是 17 位小数,但在进行算术计算时其精度远远不如整数
-
表达式和返回值:
1. 表达式:由`数字`、`运算符`、`变量`等组成的式子(如`1 + 1`、`变量++`...) 2. 表达式最终都会有一个结果,返回给我们,称为`返回值`
-
/
运算符法则1. `1 / 0` 结果为 `Infinity` (Infinity也是Number值,代表无穷大) 2. `-1 / 0` 结果为 `-Infinity`(-Infinity也是Number值,代表无穷小) 3. `0 / 0` 结果为 `NaN` (NaN也是Number值,代表非数)
3. 递增和递减运算符
-
递增和递减运算符概述
1. 如果需要反复给数字变量`添加`或`减去 1` , 可以使用`递增(++)`和`递减(--)`运算符来完成 2. 在 JS 中,`递增(++)`和`递减(--)`既可以放在`变量前面`,也可以放在`变量后面`
-
前置递增(递减)运算符
1. 放在变量`前面`时,我们可以称之为`前置递增(递减)运算符` 2. 前置递增(递减)运算符,是`先递增(递减)再返回值`
-
后置递增(递减)运算符
1. 放在变量`后面`时,我们可以称之为`后置递增(递减)运算符` 2. 后置递增(递减)运算符,是`先返回值再递增(递减)`
-
前置递增和后置递增总结
1. 单独使用时,运行结果相同 2. 与其他它代码联用时,执行结果会不同 3. 开发时,大多数使用后置递增(减),并且代码独占一行,例如:`num++`、`num--`
4. 比较运算符
-
比较运算符(关系运算符)是
两个数据进行比较时所使用的运算符
,比较运算后,会返回一个布尔值
运算符 描述 实例 结果 < 小于号 1 < 2 true > 大于号 1 > 2 false >= 大于等于号(大于或者等于) 2 >= 2 true <= 小于等于号(小于或者等于) 3 <= 2 false == 判等号(会转型) 37 == 37 true != 不等号 37 != 37 false ===、!== 全等,要求值和数据类型都一致 37 === '37' false -
=
总结
5. 逻辑运算符
-
逻辑运算符是用来进行
布尔值运算的运算符
,其返回值也是布尔值。开发中经常用于多个条件的判断逻辑运算符 描述 案例 && 逻辑与(简称'与')and true && false || 逻辑或(简称'或')or true || false ! 逻辑非(简称'非')not !true -
逻辑与
&&
:并且的意思,两边都是 true 才返回 true
,否则返回 false -
逻辑或
||
:或者的意思,只要有一边为 true 就返回 true
-
逻辑非
!
:取反的意思,用来取一个布尔值相反的值
5.1 短路运算(逻辑中断)
短路运算原理:
当有多个表达式(值)时,左边表达式值可以确定结果时,就不再运算右边表达式结果的值
- 逻辑与&&:
语法:表达式1 && 表达式2
如果第一个表达式为true
,则返回表达式2
(123 && 456 返回 456
)
如果第一个表达式为false
,则返回表达式1
(0 && 456 返回 0
) - 逻辑或||:
语法:表达式1 || 表达式2
如果第一个表达式为true
,则返回表达式1
(123 || 456 返回 123
)
如果第一个表达式为false
,则返回表达式2
(0 || 456 返回 456
)
6. 赋值运算符
- 用来把
数据赋值给变量
的运算符赋值运算符 描述 案例 = 直接赋值 var names = '张三' +=、-= 加、减一个数后再赋值 var age = 10; age+=5;结果为15 *=、/=、%= 乘、除、取模后再赋值 var age = 2; age*=5; 结果为10
7. 运算符优先级
注:一元运算符
:只有一个操作数参与运算(++、--、!
)。