5

我有一个动态构建的对象示例:

obj = {};
obj.prop1 = 'something';
obj.prop2 = 'something';
obj.prop3 = 'something';

有了这个,我现在需要从数组中获取一个项目并使用它来定义“propX”的等价物及其值

我想如果我做了类似的事情

obj.[arr[0]] = some_value;

那,那对我有用。但我也认为我得到的错误不是语法错误。“. 运算符后缺少名称”。我明白,但我不知道如何解决它。最终目标是使用数组项的值作为对象的属性名称,然后用另一个也被传递的变量定义该属性。我的问题是,我怎样才能实现它,以便对象的附件将被视为

obj.array_value = some_variable;
4

3 回答 3

8

删除点。采用

obj[arr[0]] = some_value;

我建议您阅读MDN 中的使用对象

于 2013-02-21T17:58:54.100 回答
3

你可以试试

obj[arr[0]] = some_value;

即放下点:)

于 2013-02-21T17:59:10.177 回答
3

你几乎是对的,但你只需要删除 . 从线:

obj.[arr[0]] = some_value;

应该读

obj[arr[0]] = some_value;

于 2013-02-21T17:59:47.817 回答