class Hero extends Character {
constructor (name, race, gender, role, level){
super(name, race, gender, role, level);
this.inventory = [];
this.experience = {
experienceNeeded: 100,
experienceObtained: 0
};
this.gold = 0;
}
我有这个类,它定义了玩家角色将如何。我想通过重新分配使两者experienceObtained
和gold
属性都不可更改,但可以通过运算符进行修改,以避免用户使用控制台将自己的值设置为这些属性。
this.gold = {
amount: 0,
get gold(){
return this.amount;
}
};
如上所示,我尝试使用 getter 而不声明 setter,但我仍然可以amount
通过控制台分配任何值。
我不知道我是否误解了 JavaScript 中 getter 和 setter 的使用,或者是否无法做到。