【问题标题】:How to insert an object into an array which is inside an object?如何将对象插入到对象内部的数组中?
【发布时间】:2022-01-17 17:35:21
【问题描述】:

假设如果我们有这样的数据,我们如何使用点符号或任何东西来更新数组(数据)内的对象 data1 内的数组(数据 2)。

data = [
data1:
    {
        a:"1",
        b:"2"
    }
]

    // another array(data2 - below) I am having I have to push that array inside 
    data1 as an object
data2 = [
    {
        c:"3"
    },
    {
        d:"4"
    }
    ]

我想要的回复如下:

    data = [
data1:
    {
        a:"1",
        b:"2"
    },
data2 = [
    {
        c:"3"
    },
    {
        d:"4"
    }
  ]
]

【问题讨论】:

  • data.push(data2) 从我读到的内容
  • I have to push that array inside 推送它就是答案.. 你试过什么,它有效吗?如果不是,出了什么问题?

标签: javascript node.js arrays algorithm object


【解决方案1】:

我没有真正理解你的问题,但我认为这就是你想要的?!

data = {
    data1:
    {
        a: "1",
        b: "2"
    }
}
data2 = [
    {
        c: "3"
    },
    {
        a: "3"
    },
    {
        d: "4"
    }
]

for (var key in data2) {
    for (var key2 in data2[key]) {
        if(data.data1[key2] != null){
            console.log("data.data1 with they key" + key2 + " could have been replaced/updated with " + data2[key][key2]);
        }
        console.log("key " + key2 + " has value " + data2[key][key2]);
    }
}

结果:

键 c 的值为 3 带有 keya 的 data.data1 可能已替换/更新为 3 键 a 的值为 3 键 d 的值为 4

编辑:

你为什么不这样做

data["data2"] = data2?

【讨论】:

  • 我编辑了这个问题,这将有助于更好地理解
  • data 是一个数组,而不是原始帖子中的对象。
  • @ZsoltMeszaros 是的,谢谢,当我点击并尝试一切时,我得到了这个
【解决方案2】:

var array = [];

array['data1'] = { 'name': 'a' }

var array2 = [{ c: 3 }, { d: 4 }];

array['data2'] = array2;

console.log(array)

输出:

[数据1:{名称:'a'},数据2:[{c:3},{d:4}]]

【讨论】:

  • 请试试这个
【解决方案3】:

我自己试了一下,我得到了解决方案。如果我们必须在对象中创建另一个字段,您只需给出这样的名称

data.dataTwo

这将创建另一个具有新名称的字段,现在如果我们想在其中传输或存储一个数组,我们可以简单地这样做

data.dataTwo = data2

这会将 data2 命名数组分配到一个新字段中,以 dataTwo 的形式给出

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-09-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-16
    • 1970-01-01
    相关资源
    最近更新 更多