//创立一个空对象,链接到原型,绑定this值,返回新对象function createNew(){ let obj = {} let constructor = [].shift.call(arguments) obj.__proto__ = constructor.prototype let result = constructor.apply(obj,arguments) return typeof result==='object'?result:obj}function People(name,age){ this.name = name this.age=age}let peo = createNew(People,'Allan',22)console.log(peo.name)console.log(peo.age)