SOURCE

//new
function customNew(constructor,...args){
//1.生成新的对象,继承constructor原型
const obj=Object.create(constructor.prototype)
//2.把obj当成this,constructor执行,传入参数
constructor.apply(obj,args)
//3.返回obj
return obj
}


function Foo(name,city){
    this.name=name
    this.city=city
 this.getName=()=>{
     return this.name
 }
}

const f1=new Foo('liu','wuhan')
console.log(f1)

const f2=customNew(Foo,'mei','wh')
console.log(f2)
console 命令行工具 X clear

                    
>
console