Javascript 为什么空数组等于false?

Javascript 为什么空数组等于false?,javascript,type-coercion,Javascript,Type Coercion,我在读《You't Know JS》一书的“类型和语法”部分,我很难理解这一点 为什么空数组等于false console.log(false=[]);//true当您执行[]==false时,在幕后调用数组.prototype.toString方法,将该空数组作为其此上下文,该上下文返回空字符串”,空字符串在JavaScript中是错误的值。这是否回答了您的问题? — 谷歌“js empty array equals false”的第二个结果(另一个链接是第一个结果)。@pramodsing

我在读《You't Know JS》一书的“类型和语法”部分,我很难理解这一点

为什么空数组等于
false


console.log(false=[]);//true
当您执行
[]==false
时,在幕后调用
数组.prototype.toString
方法,将该空数组作为其
上下文,该上下文返回空字符串
,空字符串在JavaScript中是错误的值。

这是否回答了您的问题? — 谷歌“js empty array equals false”的第二个结果(另一个链接是第一个结果)。@pramodsingh什么?这与这个问题无关。但它为我返回
true
@hev1称之为“空字符串”,因为只有一个。@user4642212谢谢通知我。