在 Javascript 中我们可以这样写:
var obj = {
log: ['a', 'b', 'c'],
get latest() {
if (this.log.length == 0) {
return undefined;
}
return this.log[this.log.length - 1];
}
}
console.log(obj.latest); // Outputs "c"
From: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions/get
现在,我必须调用 obj[key]
来使 getter
工作。现在:
let obj = {
get root () {
return 2
}
}
console.log(obj) // Returns { root: [Getter] }, I would like it to return "2"
我们可以让 obj
以某种方式返回 2
吗?
最佳答案
要调用函数,您需要使用 obj.root
let obj = {
get root() {
return 2
}
}
console.log(obj.root)
另一方面,您可以简单地编写 obj = obj.root
let obj = {
get root() {
return 2
}
}
obj = obj.root
console.log(obj)
关于javascript - 我们可以让一个变量在 Javascript 中充当 getter 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54401060/