0

我在看这个视频 http://www.youtube.com/watch?v=Trr95ij1358

Baranovskiy 先生强调,javascript 开发人员应该知道它的评估结果是什么:

+!{}[真]

所以我试了一下。

它输出 1

谁能给我一个理由?

4

1 回答 1

2

这被读作

将由 true 的 toString 值标识的 {} 的属性访问器的否定(布尔型转换)值转换为数字

所以,它变成

+!{}["true"]
+!undefined
+true
1
于 2012-10-24T00:32:40.593 回答