【问题标题】:How to add item to object with array of objects in javascript如何使用javascript中的对象数组将项目添加到对象
【发布时间】:2021-06-01 05:12:03
【问题描述】:

我有一个包含其他对象数组的对象,我想向该数组添加新对象。

const linkData = {
      data: [
        {
          linkName:
            "Link Name.",
          linkAddress:
            "https://whatever.com",
        }]

我试过了:

linkData.data.push({ 

 linkName: "New Link Name.",
 linkAddress: "https://newAddress.com",

})

但它只将一个对象添加到数组中,并且不会附加我传递给它的任何下一个对象。

【问题讨论】:

  • 你只调用了一次push(),所以它只会将一个对象附加到数组中。
  • 您可以使用push()data 数组中添加尽可能多的对象。
  • 请发帖minimal reproducible example。您可以使用Stack Snippet 使其可执行。

标签: javascript arrays javascript-objects


【解决方案1】:

根据您的代码,您的链接数据是一个常量变量。所以首先你必须将 const 更改为 var,如下所示。

 var linkData = {
          data: [
            {
              linkName:
                "Link Name.",
              linkAddress:
                "https://whatever.com",
            }]

var newData = [...linkData.data, {
              linkName:
                "Link Name1.",
              linkAddress:
                "https://whatever1.com",
            }]

linkData.data = newData;
console.log("linkData.data = ",linkData.data); 

【讨论】:

  • const 在这种情况下很好,因为代码没有在原始代码或您的示例中重新分配 linkData 。无需更改为var
猜你喜欢
  • 2021-09-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多