我想在对象文字名称中使用点表示法但是IE在部分'my'语句(从底部开始的第3个)之后的第16行返回错误:“Expected':'”。必须有办法做这样的事情。为什么这会返回错误?
<script language="javascript">
var my = {};
my.dataGridColumns = [];
var tmpArr = [];
var columnData = [];
columnData.push("a");
my.dataGridColumns.push({
id: 1,
name: test
});
tmpArr.push({
my.dataGridColumns[0].name: columnData[0]
});
</script>
答案 0 :(得分:3)
在JavaScript中,您可以使用[]
将对象视为关联数组。您可以利用此功能动态访问属性名称。
怎么样:
var obj = { };
obj[my.dataGridColumns[0].name] = columnData[0];
tmpArr.push(obj);