相关疑难解决方法(0)

对象文字/初始化器中的自引用

有没有办法在JavaScript中使用以下内容?

var foo = {
    a: 5,
    b: 6,
    c: this.a + this.b  // Doesn't work
};
Run Code Online (Sandbox Code Playgroud)

在当前形式中,此代码显然会抛出引用错误,因为this没有引用foo.但是,有什么办法对早些时候宣布的其他属性在对象文本的属性值依赖?

javascript object-literal

660
推荐指数
14
解决办法
12万
查看次数

递归财产,使用其他财产的财产

我正在尝试构建一个js对象,该属性可以引用同一对象中的另一个属性,这可能吗?这是我的想法,但它不起作用,希望我足够清楚:

var docs = {
   a: { properties: [1, 2] },
   b: { properties: [3] },
   c: { properties: docs.a.properties.concat(docs.b.properties) }
};

document.write(docs.c.properties);
Run Code Online (Sandbox Code Playgroud)

控制台说它找不到docs.a

未捕获的TypeError:无法读取未定义的属性"a".

javascript

1
推荐指数
1
解决办法
48
查看次数

标签 统计

javascript ×2

object-literal ×1