【发布时间】:2018-05-19 21:07:53
【问题描述】:
我有一个格式如下的数组(数据):
["1", "open_order", "form", "county", "San Diego", "title_officer", "Peter", "0"]
["2", "open_order", "form", "county", "San Diego", "branch", "MV", "0"]
当我通过 for 循环并将其添加到 dataObject 时,console.log(dataObject) 为我提供了所有条目(这就是我想要的!) 但是,console.log(o) 显示最后一个条目将进入两个记录的 o 对象。
$(function() {
var o = {};
var dataObject = {};
var i = 0;
var predata = $('#preferences').text();
var data = JSON.parse(predata);
for(i = 0; i < data.length; i++) {
dataObject['preferenceId'] = data[i][0];
dataObject['pageName'] = data[i][1];
dataObject['preferenceType'] = data[i][2];
dataObject['baseField'] = data[i][3];
dataObject['baseValue'] = data[i][4];
dataObject['targetField'] = data[i][5];
dataObject['targetValue'] = data[i][6];
dataObject['conditionalId'] = data[i][7];
o[i] = dataObject;
console.log(dataObject);
}
console.log(o);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
任何想法为什么 dataObject 对于添加到 o 对象的所有对象都是相同的?
【问题讨论】:
标签: javascript jquery loops object for-loop