在对象内的javascript中填充数组

时间:2017-03-10 12:31:35

标签: javascript arrays object

我是javascript的新手,我有一点问题。我有一个像这样的数组:

name = ["Alex","John", "Mark"].

之后,我有一个像这样的对象:

ObjectNames = {
  labels: []
}

我想用标题数组的内容填充labels数组,如下所示:

labels = [name[0], name[1], name[2]]

怎么做?

3 个答案:

答案 0 :(得分:3)

您在问题中所做的事情已经解决了您的问题,但您可以尝试一下:

ObjectNames = {
    labels: names
}

这将制作名称的副本并将其存储在标签中。

让我知道它是否有效

编辑:正如Andrew Li指出的那样,没有必要使用切片,因为JavaScript会自动创建副本

答案 1 :(得分:2)

你可以这样做:

var _name = ["Alex","John", "Mark"];
var ObjectNames = {
  labels: []
};
_name.forEach(function(e) {
  ObjectNames.labels.push(e);
});
console.log(ObjectNames.labels);

答案 2 :(得分:1)

你有很多方法可以做到这一点

试试这个

var ObjectNames = {
  labels: [name[0], name[1], name[2]]
}

var ObjectNames = {
  labels: name
}

var ObjectNames = {
  labels: name.slice()
}

ObjectNames = {
  labels: []
}

ObjectNames.labels=name ;

或者像这样

for(var i=0;i<name.length;i++)
  ObjectNames.labels.push(name[i])

name.forEach(x=> ObjectNames.labels.push(x))