javascript - 如何在 JavaScript 中将数组推送到对象

标签 javascript

我正在尝试将数组推送到 JavaScript 中的对象。

这是我的对象的样子(推送之前):

  const data = {
  columns: [
    {
      label: "InvoiceID",
      field: "InvoiceID",
      sort: "asc",
      width: 150
    },
    {
      label: "Vendor Name",
      field: "Vendor Name",
      sort: "asc",
      width: 270
    },
    {
      label: "Invoice Date",
      field: "Invoice Date",
      sort: "asc",
      width: 200
    }
  ]
};

所以我想添加(推送)另一个名为 rows 的数组,因此它看起来如下所示:

  const data = {
  columns: [
    {
      label: "InvoiceID",
      field: "InvoiceID",
      sort: "asc",
      width: 150
    },
    {
      label: "Vendor Name",
      field: "Vendor Name",
      sort: "asc",
      width: 270
    },
    {
      label: "Invoice Date",
      field: "Invoice Date",
      sort: "asc",
      width: 200
    }
  ],
  rows: [
    {
      name: "Tiger Nixon",
      position: "System Architect",
      office: "Edinburgh",
      age: "61",
      date: "2011/04/25",
      salary: "$320"
    },
    {
      name: "Garrett Winters",
      position: "Accountant",
      office: "Tokyo",
      age: "63",
      date: "2011/07/25",
      salary: "$170"
    }
  ]
};

这是我一直在尝试的方法,但没有成功。

const rows = this.state.rows;
data.push(rows);

如果您想知道,我正在使用 axio 从数据库中获取此,数组中没有错误,因为它看起来与上面所示完全相同。问题是我无法将数组推送到 data 对象。我怎样才能实现这个目标?

不要使其重复,因为我是从 NodeJS 服务器端点获取数组。

最佳答案

JavaScript 是 dynamic语言。您可以在运行时向对象添加字段。只需向对象添加一个字段即可:

data.rows = this.state.rows;

关于javascript - 如何在 JavaScript 中将数组推送到对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58248531/

相关文章:

javascript - 在 FireBug 中的浏览器 Javascript 编辑中?

javascript - hasPendingMacrotasks 和 hasPendingMicrotasks 检查什么?

javascript - 按需更新多个 Highcharts 实例的最佳性能

javascript - 无法在 IE 中的 tbody 上设置 innerHTML

javascript - Express 和 Passport Js - Google OAuth 2.0 策略没有给我 req.user 对象

javascript - Null 是类型对象,所以它是真的吗?幕后发生了什么?

javascript - 使用 google map js api v3 为路线制作动画

javascript - 如何在点击事件上更新 HTML 元素?

javascript - 如何在项目中使用多个if条件

php - 没有正则表达式的 BBCode 解析器?