算数运算符的特性
1.任何值和NaN运算, 得到的结果都是NaN
- 1+NaN--->NaN
2.任何值和字符串进行加法运算, 都会先转换为字符串之后再运算
- 1 + "2" -----> "12"
3.其它运算符, 如果参与运算的不是Number类型, 会先转换为Number类型后再运算
- 10 - "2" -----> 8
4.只有加法才会转换为字符串, - * / %都会转换为Number
- 10 / "2" -----> 5
5.对于取模运算m%n, m小于n, 结果就是m; 如果m等于0, 结果就是0, 如果n等于0, 结果就是NaN
- 3 % 0 -----> NaN
关系运算符的特性
1.对于非Number类型的数据, 会先转换为Number类型之后再比较
2.对于null和undefined来说, 虽然null转换为Number之后是0, undefined转换为Number之后是NaN, 但是再和0做==比较的时候, 会返回false
3.对于null和undefined来说, undefined值实际上是由null值衍生出来的,所以如果比较undefined和null是否相等,会返回true
4.用于不要用其它值和NaN进行==比较, 也不要让两个NaN之间进行比较
逻辑运算符的特性
1.对于非Boolean类型的数据, 会先转换为Boolean类型之后再判断
2.对于逻辑&&来说
- 条件A && 添加B;
如果条件A不成立, 那么就返回条件A
如果条件A成立, 不管条件B是否成立, 都会返回条件B
3.对于逻辑||来说
- 条件A || 添加B;
如果条件A成立, 那么就返回条件A
如果条件A不成立, 那么不管条件B是否成立, 都会返回条件B
- 注意点:
- 对于非Boolean类型的数据, 会先转换为Boolean类型之后再判断
- 判断之后的返回值, 逻辑与和逻辑或都有自己的规则
网友评论