我正在寻找的东西类似于C#的get属性,但对于JS来说。我想要的一个例子如下:
function myObj(a, b){
this.a = a;
this.b = b;
this.c = a + 5;
}
我们说我通过了5和3.然后a = 5,b = 3,c = 10。这就是我想要的。现在我想进入其他地方并说出
obj.a = 10;
所以现在a = 10,b = 3,c = 10。这不是我想要的,我希望c = 15来反映a的变化。我一直在研究这个问题大约40分钟而且非常沮丧,以至于我似乎无法按照我想要的方式工作。我尝试过功能,我已经尝试了示例中的内容,并尝试使用ES5中的get / set功能(当他们加入聚会时为6?idk)
无论如何,帮助表示赞赏,简单而令人沮丧。我讨厌在JS工作,领主让我摆脱这种邪恶;)
答案 0 :(得分:4)
我正在寻找的东西类似于C#的get属性,但是对于JS来说。
那将是一个获取属性:
class MyObj {
constructor(a, b) {
this.a = a;
this.b = b;
}
get c() {
return this.a + 5;
}
}
let obj = new MyObj(5, 3);
console.log(obj.c);
obj.a = 10;
console.log(obj.c);