js数据类型隐式转换问题

js数据类型隐式转换

![] == false //true 空数组和基本类型转换,会先[].toString() 再继续比较
![] == [] //true
![] //false
[] == [] //false
{} == {} //false
new Array(3) == ",," //toString()
[1] + {} == {} + [1]//false
[1] + {} == [1] + {}//true
[] + {} === {} + [] //true
var a = [1,2];var b = [3,4];//a+b = "1,23,4"
[1,2,[3,4,[5]]] + '' //"1,2,3,4,5"
([1,2,[3,4,[5]]] + '').split(',') //["1", "2", "3", "4", "5"]

参考
wtfjs
探秘JavaScript中的六个字符
es5

怎一个晕字了得?

猜你喜欢

转载自www.cnblogs.com/geekfeier/p/9078970.html