有一些 JavaScript 语法,但我不明白它们为什么起作用。
1.
({} === {}) // returns false
2.
function foo() {
return
{
foo: 'bar'
}
}
function bar() {
return {
foo: 'bar'
}
}
(typeof foo() === typeof bar()) //return false again
3.
([1,2,3] == [1,2,3]); //very interesting false again
最佳答案
在所有这些情况下,都会对比较运算符左侧和右侧的对象执行引用检查。这会返回 false,因为虽然它们看起来相同,但实际上是不同的实例。
关于javascript - 为什么这些 javascript 表达式会意外地工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44365289/