04-操作符
1.乘性操作符:
如果虽有操作数都是数值,执行常规的乘法运算,如果乘积超过了ECMAscript的数值表示范围,则返回infinity或-infinity;
如果有一个操作数是NaN,则返回NaN;
如果是infinity与0相乘,返回的操作数是NaN;
如果infinity与非0的数值相乘,则结果是infinity或-infinity,符号取决于操作数的符号。
infinity与infinity相乘,则结果是infinity。
如果操作数不是数值,则在后台调用Number()将其转化成数值,再应用上面的规则。
2.除法:
与乘法规则差不多,0被0除,结果是NaN。
如果是非零的有限数被零除,则结果是infinity或-infinity。
3.加法:
如果有一个操作数是NaN,则结果是NaN;
如果是infinity加infinity,返回infinity;
如果是infinity加-infinity,则结果是NaN;
4.减法:
如果infinity减infinity,则结果是NaN;
如果-infinity减-infinity,则结果是NaN;
如果infinity减-infinity,则结果是infinity;
如果是-infinity减infinity,则结果是infinity;
5.关系操作符:
>、<、<=、>=
如果两个数都是字符串,则比较两个字符串相应的字符编码值;
如果一个操作数是对象,则调用这个对象的valueOf()方法,用得到的结果比较,如果对象没有valueOf()方法,则调用toString()方法。
大写字母的编码全部小于小写字母
6.全等于不全等:
全等符(===),它只在两个操作数未经转换就相等的情况下就返回true。
不全等(==),则会把另一个不同类型的操作数转换成相同类型,再进行比较,如果相等则返回true。