function myNew(constructor, ...args) {
const obj = Object.create(constructor.prototype);// 创建一个新对象并链接到构造函数的原型const result = constructor.apply(obj, args);// 将构造函数的 this 指向新对象并执行构造函数return result instanceof Object ? result : obj;// 确保构造函数返回一个对象,如果没有则返回新对象
}
function Person(name) {this.name = name;
}
const person1 = myNew(Person, 'Alice');
console.log(person1.name); // 输出 "Alice"
new操作符的手动实现
挣钱养家