如何解决将方法的结果保存在类中
我想在一个类中保存或存储属性的结果,以便在同一类的另一个属性中使用。我该怎么办?
例如:
class MyClass {
get randomNumber() {
let number = Math.floor(Math.random() * 10) + 1
return number
}
get newSum() {
return this.randomNumber + 1 // I want to use the result from the previous property and add 1 to that
}
}
```
解决方法
立即在randomNumber
中调用constructor
getter。当您使用contructor
关键字创建new
的实例时,将调用MyClass
。
newSum
获取器现在返回存储的随机数+ 1
。
但是,我建议不要为newSum
属性使用吸气剂模式,因为不应将吸气剂用于突变值。而是使其成为一种适当的方法。
class MyClass {
constructor() {
this.number = this.randomNumber;
}
get randomNumber() {
let number = Math.floor(Math.random() * 10) + 1
return number
}
newSum() {
return this.number += 1;
}
}
const instance = new MyClass();
console.log(instance.number); // The random starting number.
console.log(instance.newSum()); // +1
console.log(instance.newSum()); // +1
console.log(instance.newSum()); // +1
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。