原创文章,转载请标记出处:https://blog.youkuaiyun.com/yihanzhi/article/details/80339690
1、其它类型转为逻辑类型
- null 转为逻辑类型为false;
- undefined 转为逻辑类型为false;
- NaN 转为逻辑类型为false;(注:NaN为特殊的number类型)
- number类型中 0转为逻辑类型为false,非0为true;
- string类型中 空字符转为逻辑类型为false,非空字符为true;
- object类型(除null外) 均转为true。
2、其它类型+string类型的运算
- 【null+string类型】null转为字符串‘null’。(null+’a’结果为‘nulla’);
- 【undefined+string类型】undefined转为字符串‘null’。(undefined+’a’结果为‘undefineda’);
- 【NaN+string类型】NaN转为字符串‘null’。(NaN+’a’结果为‘NaNa’);
- 【number类型+string类型】number类型转为字符串类型。(1+’a’结果为‘1a’)。
3、算术运算符
算术运算符包括:基本算术运算符(+, -, *, /, %)和单目算术运算符(+,-,++, - -) 。
当使用算数运算符操作时,非Number类型的操作数,先转为数字,在进行计算; 不能转为数字的转为NaN。
当操作数有string类型时,+作为连接符使用(并不是运算符),另一操作数转为string类型。
可以通过单目运算符(+)将其它类型转为数值类型,以下是特殊类型转为number类型时输出值:
- 【+null】输出为0;
- 【+undefined】输出为NaN;
- 【+NaN】输出为NaN;
- 【+boolean类型】false转为number类型为0,true为1。