例如,js代码是:
function Fruit() {this.type = "fruit";};
function Apple() {this.name = "apple"; this.__proto__ = new Fruit();}
如果我多次致电new Apple()
,会产生相同数量的new Fruit()
吗?还是取决于实施?
答案 0 :(得分:1)
不,不会。
原型由所有对象共享。苹果的任何对象都会有类似于Fruit的原型,但每次都不会创建新的水果对象。
但设置_proto是一种不好的做法,你可以将其作为
Apple.prototype = Object.create(Fruit.prototype),两者都有相同的效果