刚刚尝试了一个实验,
var f = function() { alert("yay, a function!"); };
console.log(f == function() { alert("yay, a function!"); });
,将 false
打印到控制台。但是,如果将 Javascript 函数
视为对象,那么这与
var x = 5;
console.log(x == 5);
???
最佳答案
在 JavaScript 中,引用类型不能使用相等运算符 (==) 进行比较。
所以 consoloe.log([1,2]==[1,2])
将返回 false。
并且因为函数是 Object 的实例,所以它也会返回 false。
除字符串和数字等基本类型外,不能使用相等运算符
关于javascript - 这如何符合 Javascript 中 "Functions are objects"的逻辑?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29502080/