相关疑难解决方法(0)

为什么不使用等式检查数组

我开始时:

"1:2".split(':') == ["1","2"]; 
// false
Run Code Online (Sandbox Code Playgroud)

然后尝试:

[1,2] == [1,2];
// false
Run Code Online (Sandbox Code Playgroud)

最终:

[] == []; 
// false
Run Code Online (Sandbox Code Playgroud)

我发现了:

"1:2".split(':').toString() == [1,2].toString();
// true
Run Code Online (Sandbox Code Playgroud)

所以我已经解决了我的初始问题(种类),但为什么数组不能相互匹配?

javascript

34
推荐指数
3
解决办法
2万
查看次数

为什么[1,2,3]在Javascript中不等于它自己?

我今天在Javascript中玩数组并注意到这个小宝石:

alert([1, 2, 3] == [1, 2, 3]); //alerts false
Run Code Online (Sandbox Code Playgroud)

令我感到奇怪的是阵列不等于它自己.

但后来我注意到了这一点,甚至更奇怪了:

alert([1, 2, 3] == "1,2,3");  //alerts true
Run Code Online (Sandbox Code Playgroud)

?!?!?!?!?

世界上为什么[1, 2, 3]不是==自己而是==弦乐?

我认识到,==不一样===.即便如此,邪恶可能会导致Javascript先生做出如此奇怪的事情?

javascript

11
推荐指数
2
解决办法
3217
查看次数

标签 统计

javascript ×2