对象在初始化时引用其自己的属性
Object referencing its own property on initialization
可能重复:
对象文字/初始化程序中的自引用
这能做到吗 (显然不是这种语法(
var a = {
b : 10,
c : this.b * 2 // returns 'undefined'
};
我也试过
var a = {
b : 10,
c : a.b * 2 // throws error 'a is undefined'
};
和
var a = {
b : 10,
c : b * 2 // throws error 'b is undefined'
};
对我来说,这些值是未定义的,这是有道理的,我还没有完成对它们的定义。然而,在我看来,有一种解决方案可以构造这样的对象,并使c
以b
为条件
或者,您可以使用自启动函数来给您提供与您想要的类似的影响:
var a = (function() {
var b = 10;
return {
b:b,
c:b*2
}
})();
console.log(a.c);
不使用对象文字表示法,但您可以使用函数来创建它:
function Structure(value) {
this.b = value;
this.c = 2 * value;
}
var a = new Structure(10);
或
function makeStructure(value) {
return {b:value, c:2*value};
}
var a = makeStructure(10);
相关文章:
- 消隐数组元素是否生成自己的属性
- 更好的设计,以便从对象的方法引用自己的对象的属性
- 对象方法可以有自己的属性
- 从 2 个得分最高的节点列表中获取 3 个节点(我自己设置的属性)
- 使用下划线检查自己的属性
- 在其自己的图像之后显示 Alt 属性
- 由 dojo.declare 创建的对象如何访问自己的属性
- 在自己的js中访问Google Analytics js属性
- 如何在 SignalR 中返回具有自己的类属性的对象
- 挖空添加我自己的数据绑定属性,如 With
- 函数访问函数中自己的对象属性
- 主干忽略 idAttribute 并设置自己的属性
- 可以将对象属性转换为自己的对象
- 将 jQuery 用于自己的属性
- 向DOM对象添加自定义(您自己的)属性
- 我如何制作自己的属性(HTML5)
- 对象在初始化时引用其自己的属性
- 我们可以在html元素中使用自己的属性来存储值吗?
- 用对象自己的属性初始化对象属性
- 对象返回自己的属性并保留方法