gpt4 book ai didi

javascript - 变量的 setter 可以调用它的 getter

转载 作者:行者123 更新时间:2023-12-03 01:39:50 25 4
gpt4 key购买 nike

我正在使用 ES5 getter 和 setter 以设置 <table>.<entry> = <value> 的方式获取数据库条目。将值写入本地缓存,稍后再与数据库同步。

getter 的工作是从缓存中获取条目(如果可用),或者从数据库中提取结果(如果不存在)并返回结果。但它也应该调用 setter 来缓存结果以供将来查询。

问题是,我不知道如何从 getter 内部调用 setter。我已经尝试过this.<entry> = <value> , <table>.<entry> = <value><entry> = <value> ,所有这些都会导致有关重新声明 const ( <table> ) 的错误。

那么有什么办法可以做到这一点吗?

编辑:这是复制该问题的最小示例:

const table = {
_entry: "Something",
get entry(){
/*Do Stuff*/
this.entry = "Something else"; // Exception: SyntaxError: redeclaration of const table
return this._entry;
},
set entry(value){
/*Do Stuff*/
this._entry = value;
}
}

最佳答案

从类内部(可以这么说),不需要通过 getter 来访问类成员。您可以按照您的建议使用this。如果您不被允许这样做,则意味着您的声明禁止这样做。如果您需要更改内部状态,请评估更改声明。由于没有提供代码,很难说更多。

关于javascript - 变量的 setter 可以调用它的 getter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50900328/

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