【发布时间】:2012-10-13 08:10:51
【问题描述】:
在 JavaScript 中,我注意到 []==![] 结果是 true。 demo
我不明白这个结果。你能解释一下原因吗?
【问题讨论】:
-
@zengr:我不知道。这对我来说似乎是一个完全不同的问题。
-
@BoltClock: [] 在布尔上下文中为真,因此 ![] 为假,之后代码执行 [] == false,结果为真。
-
@AnttiHaapala:这并不完全正确——
[1]在布尔上下文中为真,但![1]为假,[1] == false也产生假。这不是布尔上下文,而是==算法。 -
@BoltClock 我同意@Antti。答案详细描述了
[]和![]的转换,回答了这个问题。 -
@zengr:这不是同一个问题。
标签: javascript