在数组上使用JavaScript推送时定义索引

时间:2012-08-24 16:50:03

标签: javascript

在JavaScript中创建新数组时,我通常使用push,但我需要定义要添加到数组中的每个对象的索引。

例如:

     var array = [];
     _.each(items, function(item) {
        array.push(item);
     });

有了上述内容,我没有定义添加到数组中的每个项目的索引。

我试过这个:

     var array = [];
     _.each(items, function(item) {
        array[item.id] = item;
     });

但我最终得到一个空数组。任何帮助都会很棒!

谢谢

2 个答案:

答案 0 :(得分:0)

由于您使用的是underscore.js,因此您可以将迭代器函数定义为

function(item, index){
  ..
}

它会为你填写索引变量。

var items = ['a', 'b', 'c'];
_.each(items, function(d, i){ console.log(d, i); });
// a 0
// b 1
// c 2

答案 1 :(得分:0)

我们需要查看数据。

特别是' item.id&#39 ;?它是整数值吗?

你真的想要使用一个与哈希表相似的对象吗?