我今天在 Javascript 中使用数组并注意到这个小宝石:
alert([1, 2, 3] == [1, 2, 3]); //alerts false
令我感到奇怪的是,数组不等于自身。
但后来我注意到了这一点,这更奇怪:
alert([1, 2, 3] == "1,2,3"); //alerts true
?!?!?!?!!!?
为什么在世界上[1, 2, 3]
不是==
对自己而是==
对字符串?
我认识到,==
是不一样的===
。即便如此,是什么邪恶导致Javascript先生做出如此奇怪的事情?