有没有办法在JavaScript中使用以下内容?
var foo = {
a: 5,
b: 6,
c: this.a + this.b // Doesn't work
};
Run Code Online (Sandbox Code Playgroud)
在当前形式中,此代码显然会抛出引用错误,因为this没有引用foo.但是,是有什么办法对早些时候宣布的其他属性在对象文本的属性值依赖?
可能重复:
对象文字/初始值设定项中的自引用
可以这样做吗? (显然不在这个语法中)
var a = {
b : 10,
c : this.b * 2 // returns 'undefined'
};
Run Code Online (Sandbox Code Playgroud)
我也试过了
var a = {
b : 10,
c : a.b * 2 // throws error 'a is undefined'
};
Run Code Online (Sandbox Code Playgroud)
和
var a = {
b : 10,
c : b * 2 // throws error 'b is undefined'
};
Run Code Online (Sandbox Code Playgroud)
我觉得这些值是未定义的,我还没有完成它们的定义.然而,在我看来,似乎会有一个解决方案来构建像这样的对象并且c有条件b