填充阵列 - 角JavaScript



我有一个空的对象和数组:

var aux = {};
var header = []

我还有一个我想用来填充标题

的名称列表
var listOfNames = ["1", "2", "3"];

所以我想做的就是用它填充标头(我只是发布一个非常简单的代码,这是为什么我在不需要时有2个循环,但我需要以这种方式进行检查(

for (var i = 0; i < 1; i++) {
  for (var j = 0; j < 3; j++) {
    var attribute = listOfNames[j];
    aux["Test"] = attribute;
    objectHeader.push(aux);
  }
  console.log(objectHeader);
 }

我的想法,或者我在做什么,是创建一系列length = 1,如下:

[{Test: 0}, {Test: 1}, {Test: 2}]

但是我得到的是:

[{Test: 2}, {Test: 2}, {Test: 2}]

任何想法为什么?

使用数组方法映射。

map((方法创建一个新数组,并带有调用的结果 在调用数组中的每个元素上提供了功能。

示例:[1, 2, 3].map(function(x) {return x*x})创建一个新数组[1, 4, 9]

在您的情况下:

objectHeader = listOfNames.map(function(name){return {"Test":name}});

最新更新