-9

我今天看到了这段奇怪的代码!{}[true];。当您运行此代码片段时,它会返回 true。

full 是什么!{}[true]意思以及为什么它返回 true。

>>>!{}[true];
'true'
4

2 回答 2

2

{}[true]返回undefined,因为{}没有属性"true"!{"true":25}[true]将返回false)。

!{}也是如此true

于 2013-10-31T14:40:54.383 回答
0

否定一个对象?你究竟如何否定一个对象?

无论如何,从{}[true]. 这样做是创建一个新对象,并引用其true不存在的成员,因此返回未定义。

那么你有!undefined,它的计算结果是true

于 2013-10-31T14:41:42.497 回答