我与Chrome的JavaScript控制台]玩弄最近,我发现这一奇怪现象:的Javascript怪癖
[] == true
false
[0] == true
false
[0] == []
false
这似乎并没有使乍一看任何意义(!假=假的),但我认为真正的推理在于==运算符的多态性。将一个数组与一个布尔值进行比较与将数组与另一个数组进行比较不是一回事。
说了那么,你发现了什么其他的Javascript怪癖?
我与Chrome的JavaScript控制台]玩弄最近,我发现这一奇怪现象:的Javascript怪癖
[] == true
false
[0] == true
false
[0] == []
false
这似乎并没有使乍一看任何意义(!假=假的),但我认为真正的推理在于==运算符的多态性。将一个数组与一个布尔值进行比较与将数组与另一个数组进行比较不是一回事。
说了那么,你发现了什么其他的Javascript怪癖?
研究真假和错误的JavaScript。这是严肃地称之为。
强制性:http://wtfjs.com – sdleihssirhc 2011-04-01 00:55:55
哈哈,当然有一个致力于取笑Javascript的整个网站。 – 2011-04-01 00:56:42
用'==='尝试看看会发生什么。 – drudge 2011-04-01 00:56:50