当前位置:澳门贵宾厅 > 澳门贵宾厅 > 类型隐式转换介绍在js中澳门贵宾厅
类型隐式转换介绍在js中澳门贵宾厅
2020-03-02

类型隐式转换介绍在js中澳门贵宾厅。valueOf() 方法可返回 Boolean 对象的原始值。

时间: 2019-12-27阅读: 62标签: 类型隐式转换介绍在js中,当运算符在运算时,如果两边数据不统一,CPU就无法计算,这时我们编译器会自动将运算符两边的数据做一个数据类型转换,转成一样的数据类型再计算,这种无需程序员手动转换,而由编译器自动转换的方式就称为隐式转换,例如1 "0"这行代码在js中并不会报错,编译器在运算符时会先把右边的"0"转成数字0然后再比较大小

逻辑运算符优先级高于关系运算符1.逻辑非将其他数据类型转换成布尔类型2.关系运算符将其他数据类型转换成数字

关于== 和 ===的性能,有人会觉得, == 的性能会比 === 的性能要慢。没错,== 确实是要比 === 多花一点时间,但是这只是微秒级的差别,也就是万分之一秒左右,对于程序来说可忽略不计。但是无论 == 还是 === 都会检测类型,只是检测出来之后各自的操作不一样。

console.log( [ ] == 0) //true 空数组的toString()方法会得到空字符串console.log( ![ ] == 0) //true 空数组转布尔得到true 然后取反得到falseconsole.log( [ ] == [ ]) //false console.log( !{} == 0) //false 空对象console.log( {} == {}) //false 引用数据类型存在堆中,堆中存储的是地址console.log( !{} == {}) //false

空数组的toString()方法会得到空字符串,而空对象的toString()方法会得到字符串[object Object](注意第一个小写o,第二个大写O哟)

上一篇:没有了
下一篇:没有了