我知道JavaScript有很多瘋狂的結果和類型之間的比較,但我不完全明白爲什麼。今天遇到這個。爲什麼JavaScript中的「」== [null]爲true?
爲什麼
"" == [null]
評估在JavaScript true
?
一些更多的JavaScript平等娛樂,感謝@Qantas:
- Why does 2 == [2] in JavaScript?
- Why is 0 == "" true in JavaScript
- Why if([]) is validated while [] == false in javascript?
- Why does !{}[true] evaluate to true in JavaScript?
與單個空元素的數組獲得的澆鑄爲字符串,這意味着它調用它。加入(「」),因爲它變成'(串)null',這是一個空的只有一個元素串。 – scragar 2014-08-27 15:41:07
使用全等''===,如果要比較兩個不同的類型,將其轉換爲同一類型 – 2014-08-27 15:46:12
相關:http://dorey.github.io/JavaScript-Equality-Table/ – MikeTheLiar 2014-08-27 17:11:14