也许有人可以帮我解决这个问题。
我正在从列表中提取输入元素的名称和值,如下简化版本:
<ul id="options_set_1">
<li><input name="width" value="10" /></li>
<li><input name="height" value="20" /></li>
<li><input name="depth" value="5" /></li>
</ul>
ul
的 id 以及输入的名称和值随后被分配给变量,因此最终表示为:
var optionsSet1 = "options_set_1"
var name1 = "width"
var value1 = "10"
var name2 = "height"
var value2 = "20"
var name3 = "depth"
var value4 = "5"
然后我有一个空对象,需要按如下方式填充:
signState = {};
signState[optionSet1] = {name1 : value1};
对象已填充,但问题是“name1”不反射(reflect)变量值“width”。如何让对象不采用变量名称并将其指定为键名称?
最佳答案
与您在 optionSet1
中使用它的方式相同 - 使用括号表示法:
signState = {};
signState[optionSet1] = {};
signState[optionSet1][name1] = value1;
关于javascript - 当键名由变量表示时,如何将键分配给对象文字?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30777481/