gpt4 book ai didi

javascript - 每次调用对象属性时从函数返回一个值

转载 作者:行者123 更新时间:2023-11-29 20:03:07 27 4
gpt4 key购买 nike

我在 javascript 中有一个人为的例子来解释我想做什么:

我有一个对象:

var Item = {
_first = undefined,
_second = undefined,
whole = putTogether()
};

function putTogether() {
if (_first && _second)
return _first + '_' + _second;

return '{ Invalid Values }';
}

我正在尝试能够将 Item.whole 作为属性进行访问。有没有一种方法可以让 putTogether 在每次访问时都被评估,而不是最初在创建对象时评估?

我知道我可以为 Item.whole 定义一个匿名函数,但我专门尝试构建它,以便它可以作为值而不是函数来引用。

最佳答案

这就是 setter/getter 。是的,这是可能的:

var Item = {
_first: undefined,
_second: undefined
};
function putTogether() {
if (this._first && this._second)
return this._first + '_' + this._second;
return '{ Invalid Values }';
}

Object.defineProperty(Item, 'whole', {
get: putTogether
});

关于javascript - 每次调用对象属性时从函数返回一个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13432902/

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