我们平常在使用实例话一个对象的时候,比如 var a = new B(), 在new的过程中到底经历了四步过程:
var a = new B();
1、创建一个空对象,var obj = {}
2、这个空对象的_proto_成员指向了构造函数(B)的prototype对象,实现继承,obj._proto_ = B.protoyype
3、把函数里的属性添加到空对象里面, 并且执行该函数;B.call(a)
4、返回添加属性后的对象;
我们平常在使用实例话一个对象的时候,比如 var a = new B(), 在new的过程中到底经历了四步过程:
var a = new B();
1、创建一个空对象,var obj = {}
2、这个空对象的_proto_成员指向了构造函数(B)的prototype对象,实现继承,obj._proto_ = B.protoyype
3、把函数里的属性添加到空对象里面, 并且执行该函数;B.call(a)
4、返回添加属性后的对象;
本文标题:new操作符到底做了什么?
本文链接:https://www.haomeiwen.com/subject/hhyzwqtx.html
网友评论