运算符
自增运算符
前置自增运算符
++a是先进行自增,后进行取值
后置自增运算符
a++是先返回原值,后进行自增
自减运算符
前置自减运算符
–a是先进行自减,后进行取值
后置自减运算符
a–是先返回原值,后进行自减
自增自减运算符的隐式转换
比较运算符
逻辑运算符
&& 逻辑与
两者为真,结果为true
只要有一方为false,结果就为false
|| 逻辑或
两者为false,才为false
一方为true,结果就是true
!逻辑非
转成布尔值
!!再转回来
1&2
查落脚点,把1和2看成布尔值(不是转化)
则为2
1 &0&2
查落脚点,把1 0 2看成布尔值(不是转化)
则为0
短路运算(逻辑中断)
难真易假
逻辑与短路运算
难假易真
逻辑或短路运算
-
如果表达式1 结果为真 则返回的是表达式1
-
如果表达式1 结果为假 则返回的是表达式2
运算符优先级
三元运算符优先级大于赋值运算符
关系运算符
特殊值
值 | |
---|---|
null == undefined | true |
‘NaN’ == NaN | false |
‘NaN’ == ‘NaN’ | true |
5 == NaN | false |
NaN == NaN | false |
false == 0 | true |
true == 1 | true |
true == 2 | false |
undefined == 0 | false |
null == 0 | false |
‘100’ == 100 | true |
‘100’ === 100 | false |
三目运算符
条件表达式?表达式1:表达式2;
// 如果条件成立,输入表达式1,否则输出表达式2