为什么JavaScript中有[]!== []?

fah*_*cht 8 javascript equality equality-operator

为什么[] !== []用JavaScript?

我通过https://developer.mozilla.org/en-US/docs/Web/JavaScript/Equality_comparisons_and_sameness阅读,但我找不到任何解释这一点的内容.

编辑: 我不认为这个问题这个问题与我的完全重复.它询问==操作员只是表现得很疯狂.答案是我的问题的答案,但这不是同一个问题.

Lew*_*Lew 5

这会对两个数组文字进行引用检查,以查看它们是否是同一个实例.您有两个文字的事实意味着您正在构建两个单独的数组,因此引用检查返回false.这将返回true:

var a = []
var b = a

//b === a
Run Code Online (Sandbox Code Playgroud)

这是因为我们对同一个数组有两个引用.