浅谈JavaScript new对象的四个过程

来源:互联网 发布:美团数据分析工资 编辑:程序博客网 时间:2024/06/11 15:47

new对象:

function Person(name,age){     this.name=name;     this.age=age;}var person=new Person("Alice",23);

new一个对象的四个过程:
1、创建一个空对象

var obj=new Object();

2、让Person中的this指向obj,并执行Person的函数体

var result=Person.call(obj);

3、设置原型链,将obj的__proto__成员指向了Person函数对像的prototype成员对象

obj.__proto__=Person.prototype

4、判断Person的返回值类型,如果是值类型,返回obj。如果是引用类型,就返回这个引用类型对象

if(typeof(result)=="object")     person=result;else     person=obj;
原创粉丝点击