【发布时间】:2015-04-20 06:31:04
【问题描述】:
当我运行以下代码行时:
var x = []; console.log(!x); console.log(x == false);
> false
> true
我假设使用 !将正确强制类型,类似于它在 PHP 中的工作方式,并且这两个控制台日志将返回相同的输出。有人可以向我解释这里发生了什么吗?
【问题讨论】:
-
我知道 === 和 == 之间的区别。我想在这里说明的一点是使用 !没有强制类型正确地布尔值。我希望上述两个输出是相同的。
-
当我运行该代码时,我在第一次测试中得到了错误。
-
@Frank 参考我在第一个答案中的评论。我打错了。使用正确的输出编辑问题。
-
啊,抱歉,我没有及时刷新页面来查看编辑内容。
-
在这种情况下,== 可能是在比较数据类型。
标签: javascript