//明白原理
/*
1. new 首先生成一个实例对象(一个函数, 属于对象)
2. 改变this的指向
3. 继承构造函数的方法属性
(注)在构造函数中写写函数,
new 的过程如果你不返回,将在最后默认会加一行 return this
*/
function myNew(func,...agrs){
let obj={}
obj.__proto__=func.prototype
let instance=func.call(obj,...agrs)
return instance instanceof Object ? instance:obj
}
面试-手写new
最新推荐文章于 2023-10-18 16:49:39 发布