var newObj = function(func){
var t = {}
t.prototype = func.prototype
var o = t
var k =func.call(o);
if(typeof k === 'object'){
return k;
}else{
return o;
}
}
var parent1 = newObj(Parent) //等价于new操作
https://juejin.im/post/5c11e300e51d4548271781d8
文字版:
1.新建一个对象
2.o.proto = Object.prototype 将新创建的对象的__proto__属性指向构造函数的prototype
3.将this指向新创建的对象
4.返回新对象,但是这里若构造函数返回值是对象,则返回该对象。