返回课程

两个函数 - 一个对象

重要性:2

是否可以创建函数 AB 使得 new A() == new B()

function A() { ... }
function B() { ... }

let a = new A();
let b = new B();

alert( a == b ); // true

如果可以,请提供它们的代码示例。

是的,这是可能的。

如果一个函数返回一个对象,那么new会返回该对象而不是this

因此,它们可以例如返回同一个外部定义的对象obj

let obj = {};

function A() { return obj; }
function B() { return obj; }

alert( new A() == new B() ); // true