-
JS new操作符主要做了以下几件事
-
创建空对象;
- 将对象的__proto__指向函数的prototype;
- 改变this的指针;
- 将其返回。
-
自己手动实现一个new 操作符
-
function newInstance() { let constructor = [].shift.call(arguments); let obj = Object.create(constructor || null); let result = constructor.apply(obj, arguments); return typeof result === "object" ? result || obj: obj; }