【发布时间】:2012-03-04 14:28:39
【问题描述】:
我有两个数组:
var columns = ["Date", "Number", "Size", "Location", "Age"];
var rows = [["2001", "5", "Big", "Sydney", "25"],["2005", "2", "Med", "Melbourne", "50"],["2012", "20", "Huge", "Brisbane", "80"]];
我正在尝试将它们组合成一个 javascript 对象,用于 rows 数组中的每个项目。之后,我想将每个对象推入一个新数组中。
喜欢:
var newarray = [];
//'thing' should be the same structure for each row item
var thing = {
"Date" : "2001",
"Number" : "5",
"Size":"Big",
"Location":"Sydney",
"Age":"25"
}
newarray.push(thing);
当我知道列名时我可以这样做,但是当列名未知时我需要能够以这种方式存储数据 - 即基于列数组的索引。
我之前试过这样:
for(var y = 0; y < rows.length; y++){
for(var i = 0; i < columns.length; i++){
thing[columns[i]] = rows[i][i];
}
newarray.push(thing)
}
上面的代码只是一次又一次地存储了第一项(根据rows.length)。
我不明白如何将列名与行结合起来创建对象数组。 'rows' 包含数组的事实尤其令人困惑..
【问题讨论】:
标签: javascript arrays object