【发布时间】:2016-04-13 14:52:19
【问题描述】:
我想通过for循环创建一个包含对象的数组但是有一个问题,我想要的形状如下:
[
{ data: 'apple', label: 'Fruits' },
{ data: 'banana', label: 'Fruits' },
{ data: 'mango', label: 'Fruits' }
]
所以我尝试了以下方式,但它无法正常工作。
var arr = [];
obj = {};
var fruits = ['banana', 'apple', 'mango'];
var label = 'Fruits';
for (var i=0; i<fruits.length; i++){
obj['data'] = fruits[i];
obj['label'] = label;
arr.push(obj);
}
console.log(arr);
结果只是推送了同一个对象。
[
{ data: 'apple', label: 'Fruits' },
{ data: 'apple', label: 'Fruits' },
{ data: 'apple', label: 'Fruits' }
]
这是因为更紧密的功能吗?我怎样才能使它好起来?
【问题讨论】:
标签: javascript arrays