function creat(fn,...args){
//1、创建控对象
var obj = {}
//2、将空对象的原型指向构造函数的原型
Object.setPrototypeOf(obj,fn.prototype)
//3、将空对象作为构造函数的上下文(改变this指向)
var result = fn.apply(obj,args)
//4、对构造函数有返回值的
return result instanceof Object ? result : obj
}
new操作符都做了什么
最新推荐文章于 2024-06-05 16:22:14 发布