1、前置操作符
前置递增 和 递减数值都是在变量执行前执行
var num = 1, num2 = 2;
--num + num2 = 2; // --num + num2 === num+num2;
2、一元加减运算
对非数字使用时 先像Number()一样进行类型转换
3、布尔操作符
&&: 如果第一个值为false 那么第二个值 不论是否定义 都不会报错,因为不会执行
false && val // false
true && val // 报错 val is not defined
4、乘型操作符
乘法:
Infinity * 0 ; //NaN Infinity * -0; //NaN
Infinity * 非零 //Infinity 或 -Infinity
除法:
Infinity / Infinity ; // NaN
Infinity / 非零 ; / / Infinity 或 -Infinity
数字(包括0)/ Infinity; // 0 或 -0
5、比较操作符
[] < {} // true
原因: 对象比较先比较 valueOf() 如果无法比较 则比较 toString();
[].valueOf().toString() ; // ""
{}.valueOf().toString(); // "[object, Object]";