gpt4 book ai didi

javascript - 试图理解对象原型(prototype)

转载 作者:行者123 更新时间:2023-11-30 17:18:16 31 4
gpt4 key购买 nike

为什么这段代码给我一个错误“Uncaught TypeError: Cannot set property 'grossSuperAnnuation' of undefined”?谢谢。

function taxCalculation(configuration){
this.superAnnuationPercentage = configuration.superAnnuationPercentage;
this.superAnnuationTaxRate = configuration.superAnnuationTaxRate;
};

var tax = new taxCalculation({
superAnnuationPercentage: 9.25,
superAnnuationTaxRate: 15
});

tax.prototype.grossSuperAnnuation = function(income){
return income * this.superAnnuationPercentage / 100;

};

最佳答案

您要更改的原型(prototype)是您的构造函数之一:

taxCalculation.prototype.grossSuperAnnuation = function(income){

如果你真的想从实例开始,你可以这样做:

tax.constructor.prototype.grossSuperAnnuation = function(income){

注意你可以

tax.grossSuperAnnuation = function(income){

但是只有这个实例会具有该功能,而使用 new taxCalculation 创建的其他实例则不会。

关于javascript - 试图理解对象原型(prototype),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25666121/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com