javascript中的函数相等性

Ale*_*lls 4 javascript node.js

JS 引擎实际上如何比较对象(如函数声明)的相等性?

var f1 = function(){};
var f2 = function(){};

console.log(f1 === f2);  //false
Run Code Online (Sandbox Code Playgroud)

幕后实际发生了什么来确定对象引用不同?它是比较内存位置吗?

vp_*_*rth 5

函数是对象。
对象的不同实例永远不会 srict(或 non-strict ) 相等。

指针应用的严格相等:

var a = b = {}, c = {};
console.log(a === b, a === c); // true false
Run Code Online (Sandbox Code Playgroud)

  • 它们也从来不是非严格相等的。 (2认同)