在JavaScript数组中添加新列

4

我有一个包含三列的数组,就像这样:

data.push({
  country: new Date(),
    newSales: Math.random() * 1000,
     expenses: Math.random() * 5000
 });

现在,当我点击按钮时,我想要在其中添加一个新的列。有人能告诉我如何做吗?


1
如果您想在数据的第一个元素中添加新属性,请尝试使用 data[0].newcolumnname = '任何值' - Okky
5个回答

9
您可以遍历数据数组,并向每个元素添加键和值。
data[0]["foo"] = bar; // this can be useful if the key is not constant

或者

data[0].foo = "bar"

1
您可以像这样在数组中定义列的单独对象:
var cols = { country: new Date(), newSales: Math.random() * 1000, expenses: Math.random() * 5000 };

然后说,data.push(cols);

现在在您的按钮逻辑中,按以下方式向对象添加一个新列(或属性):

obj.newCol = 'some value';

这将自动反映在您的数组中。

1

// 伪代码

for i in data
    data[i].foo = "bar"

0
这是我添加二维数组列的方法。我分享给那些关心的人。
var textarray = [[{ text: 'Content 1' }, { text: 'Content 2' }], 
                 [{ text: 'Content 3' }, { text: 'Content 4' }]];

在数组右侧添加列的方法。
insertColumnAtRight() {
    for (var i = 0; i < this.textarray.length; i++) {
      this.textarray[i].push({ text: "" });
    }
}

如果你想在左侧增加列,可以使用 unshift 方法替代 push 方法。

-1

如果你看到我的代码,我已经使用了push方法来插入项目。我的问题是如何在数组中添加一个新的列,而不是新的项目。希望现在清楚了。 - Ashish

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接