什么意思是“;向原型添加方法”;

what means "add method to prototype"

本文关键字:添加 方法 原型 意思是 什么      更新时间:2023-09-26

例如,我们已经有3个"类"(函数):水果<=苹果<=GreenApple。所以苹果继承了水果,绿苹果继承了苹果。(在实例上使用原型)。所以,如果我理解正确的话:"水果原型"是一个对象,"苹果原型"是水果,"greenApple原型"是"苹果"?因此,考虑到这一点,我有以下问题:

"Apple.protype.getInfo"中的"Apple.prototype"是什么意思??:

function Apple (type) {
    this.type = type;
    this.color = "red";
}
Apple.prototype.getInfo = function() {
    return this.color + ' ' + this.type + ' apple';
};

再说一遍:对我来说,苹果的原型是水果(Apple.prototype==水果),但在上面的代码中,我们看到它使用了另一种方式,那么这里的Apple.prototype是什么???如果我们得到苹果的新实例。

var greenApple = new GreenApple('apple1');

如果GreenApple类中没有getInfo方法,它将在GreenApple.prototype(Apple)中查看,但在Apple.prototype中声明了getInfo(它是什么)??

最后:区别:

Apple.prototype.getInfo = function(){*_*} 

Apple.getInfo = function() {*_*}

苹果的原型是水果(Apple.prototype==水果)

没有。"苹果公司的原型是a水果"并不意味着"苹果的原型是水果"

前者意味着

Apple.prototype instanceof Fruit

后者表示

Apple.prototype === Fruit