2282410507
侠客
侠客
  • 最后登录2020-04-25
  • 发帖数5
阅读:6084回复:0

[js]js 数据类型 常见隐式转换问题

楼主#
更多 发布于:2019-03-26 22:46
基本类型

运算符(+,-,*,/,%)操作时 转换类型
        ”+“ 号运算符 :

图片:1.png


                            

图片:2.png

图片:5.png


                              

图片:3.png

图片:4.png




总结: 当加号运算符时,String和其他类型时,其他类型都会转为 String;其他情况,都转化为Number类型 , 注: undefined 转化为Number是 为’NaN‘, 任何Number与NaN相加都为NaN。
其他运算符时, 基本类型都转换为 Number,String类型的带有字符的比如: '1a' ,'a1' 转化为 NaN 与undefined 一样。


tip:(1)NaN 不与 任何值相等 包括自身,所以判断一个值 是否为 NaN, 即用 "!==" 即可。
(2) 转换为 Boolean类型为 false 的有:null,0,'',undefined,NaN,false
                      (3)number() 与 parseInt() 都可以将对象转化为Number类型,Number函数要比parseInt函数严格很多。基本上,只要有一个字符无法转成数值,整个字符串就会被转为NaN。


参考:https://www.cnblogs.com/ihboy/p/6700059.html
游客


返回顶部

公众号

公众号