相关疑难解决方法(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万
查看次数

在声明期间访问对象内以前的值

可能的重复:
对象文字声明中的自引用

var obj = {
    value: 10,
    value2: value + 2
};
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到以上呢?(假设这是可能的)

我使用大量 jQuery$.extend来添加更多依赖于之前添加的值的属性;这样修改一些值就会自动纠正其余的值。

javascript jquery accessibility object self

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

如何在创建时从同一对象引用键?

说我有一个像这样的对象:

var time = {
    'second': 1000,
    'minute': 1000 * 60,
    'hour'  : 1000 * 60 * 60,
    'day'   : 1000 * 60 * 60 * 24,
    'week'  : 1000 * 60 * 60 * 24 * 7
};
Run Code Online (Sandbox Code Playgroud)

我如何缩短它以便引用其他键?

我的意思是这样的:

var time = {
    'second': 1000,
    'minute': this.second * 60,
    'hour'  : this.minute * 60,
    'day'   : this.hour   * 24,
    'week'  : this.day    * 7
}
Run Code Online (Sandbox Code Playgroud)

我无法引用每个使用time.foo因为变量尚未初始化.我可以简单地在一个新命令上添加每个命令,例如time['hour'] = time.minute * 60;,但我宁愿在一个命令中执行它.

javascript json object

4
推荐指数
2
解决办法
148
查看次数

标签 统计

javascript ×3

object ×2

accessibility ×1

jquery ×1

json ×1

object-literal ×1

self ×1