美文网首页
js new 做了什么,模拟new的操作

js new 做了什么,模拟new的操作

作者: 爱看小说的叶子 | 来源:发表于2020-05-21 13:33 被阅读0次

new原理:

(1) 创建了一个对象,并将其原型对象赋给其_proto_.

(2) 执行构造函数的属性赋值和方法。

(3)返回这个对象

模拟new做的的操作

function newFun(func){ 

   var d = Object.create(func.prototype);  第一步

func.call(d);  第二步

 return d; 第三步

}

例如:

function Ft(){ this.name = 'ye'}  

var f = newFun(Ft)

f.constructor    输出// ƒ Ft(){ this.name = 'ye'}

相关文章

网友评论

      本文标题:js new 做了什么,模拟new的操作

      本文链接:https://www.haomeiwen.com/subject/wjyzohtx.html