gpt4 book ai didi

javascript - 赋值的同时赋值

转载 作者:行者123 更新时间:2023-11-27 23:05:26 26 4
gpt4 key购买 nike

我开始越来越多地使用 Javascript,偶尔会遇到以下问题。
我想根据我刚刚输入的值来分配值。

简单示例:

var Example = {
valueA : 100,
valueB : 20,
valueC : Example.valueA / Example.valueB
}

但这给出了 Example is undefinedvalueC线。我假设Example对象此时尚未准备好使用,它首先必须“完成制作”。

我能做到:

var Example = {
valueA : 100,
valueB : 20,
valueC : -1 // Gets value later
}
Example.valueC = Example.valueA / Example.valueB

在这个例子中,这是完全可以接受的,但我最终会遇到很多这样的“post init”问题,或者分配的值有点复杂(例如一个公式)。

像“简单示例”这样的东西可以工作吗?我当前的解决方案感觉有点矫枉过正,我需要更优雅的东西,在阅读代码时读起来更好。

最佳答案

您可以使用getter :

The get syntax binds an object property to a function that will be called when that property is looked up.

一个优点是,您可以将其他值分配给属性 valueAvalueB 并获得除法的实际结果。

var Example = {
valueA: 100,
valueB: 20,
get valueC() {
return this.valueA / this.valueB;
}
};

document.write(Example.valueC);

关于javascript - 赋值的同时赋值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36645275/

26 4 0
文章推荐: javascript - 单击 AngularJS 中的链接后,信息不会刷新。我有 {{ value }} 但没有数据
文章推荐: javascript - 引用错误: Can't find variable: functionName
文章推荐: c++ - 如何将 std::stringbuf 转换为 char 数组?
文章推荐: html - 如何仅使用 CSS 设置