浅谈JavaScript new对象的四个过程

WEB前端 waitig 345℃ 百度已收录 0评论

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;

本文由【waitig】发表在等英博客
本文固定链接:浅谈JavaScript new对象的四个过程
欢迎关注本站官方公众号,每日都有干货分享!
等英博客官方公众号
点赞 (0)分享 (0)