美文网首页
js显示隐式转换

js显示隐式转换

作者: Aiq127 | 来源:发表于2020-08-06 21:53 被阅读0次
显示转换

在 JS 中类型转换只有三种情况,分别是:
1、转换为布尔值(调用Boolean()方法)
2、转换为数字(调用Number()、parseInt()和parseFloat()方法)
3、转换为字符串(调用.toString()或者String()方法)


64.jpg

(undefined转数字为NaN)
使用Boolean(value)方法可以强制转换任意值为boolean类型,除了以下六个值,其他都是自动转为true:
undefined
null
-0
+0
NaN
‘’(空字符串)
Boolean(undefined) // false
Boolean(null) // false
Boolean(0) // false
Boolean(NaN) // false
Boolean('') // false

隐式转换
33.png

当两个不同类型的数据进行抽象比较(==)时,JS会将它们先转换成统一数据类型,低层级的数据类型向高层级的数据类型转换,直到“==”左右两边数据类型相同,然后比较数据的值是否相同。

举个例子:
1、数字遇上字符串:字符串→数字
1 == '1' //true
2、数字遇上布尔:布尔→数字
0 == false //true
3、数字遇上对象:对象→数字
0 == [0] //true
4、字符串遇上布尔:字符串→数字,布尔→数字
"" === false //true
"0" === false //true "0" → 0,false → 0
5、字符串遇上对象:对象→字符串
[1, 2, 3] == '1,2,3' //true
6、布尔遇上对象:
[0] == false //true [0] → "0" → 0, false → 0
[] == false //true [] → "0" → 0, false → 0
![] == false //true
![] == false //false

undefined == false //false
null == false //false
undefined == null //true
注意:
1、![] == false为true是因为 ! 会将 [] 直接转换成Boolean,在JS中,将其他数据类型转换成Boolean时,只有空字符串("")、0、null、undefined、NaN会转换成false,其他数据都会转换成true,所以空数组([])会被转换成true,![]为false,!![]为true
2、undefined和null与任何有意义的值比较返回的都是false,但是null与undefined之间互相比较返回的是true。

相关文章

  • 类型转换

    js的类型转换分成显示和隐式,显式转换常用类型转换函数进行转换,隐式最多用在条件判断,通常是把字符转为布尔型。类型...

  • JS的基本小结

    JS基本输出方式 JS数据类型 变量 常量 变量常量小练习 声明提前 隐式转换 显示转换/强制转换

  • js显示隐式转换

    显示转换 在 JS 中类型转换只有三种情况,分别是:1、转换为布尔值(调用Boolean()方法)2、转换为数字(...

  • js类型转换—实战篇

    显示转换 隐式转换

  • js中的类型转换

    在js中数据转换分为3种:隐式类型转换,强制类型转换,函数转换 1.隐式类型转换 (1):运算符转换 js中的值在...

  • js总结(2.转换)

    转换 1.隐式转换结论 2.显示转换/强制转换

  • static_cast, dynamic_cast,const_

    1 转换类型 c++中的转换类型分为隐式转换和显示转换。 2 隐式转换 又称为标准转换,包括以下几种情况:1)算数...

  • 隐式转换 显示转换

    ####一.隐式转换 **1) 查看数据类型** *typeof* ```js 案例: v...

  • JavaScript改变this指向的3种方法(代码说明)

    我们用例子来说明问题 隐式转换 显示转换 new

  • C++中static_cast, const_cast, rei

    C++中存在显示转换和隐式转换,所谓隐式转换即是比如int和float相加时,int会自动转换成float,此外还...

网友评论

      本文标题:js显示隐式转换

      本文链接:https://www.haomeiwen.com/subject/ukntdktx.html