使用 JavaScript 中现有对象数组的新键/值将数组添加到对象数组

问题描述 投票:0回答:2

我想获取一个现有数组并将其添加到现有对象数组中。我想添加一个新键,其中包含原因值。请帮忙。

数组: const 原因 = ['a', 'b', 'c'];

数组对象如下所示:

[{ 编号: 1, 数据:“是” 活跃:真实 },

{id:2, 数据:“是” 活跃:假 },

{id:3, 数据:“数据” 活跃:假 }]

想要的结果: [{ 编号: 1, 数据:“是”, 主动:真实, 原因:一 },

{id:2, 数据:“是”, 活跃:假, 原因:b },

{id:3, 数据:“数据” 活跃:假 原因:c }]

javascript arrays object
2个回答
0
投票

最简单的方法是循环遍历每个对象并向其添加

reason

const reasons = ['a', 'b', 'c']
const objects = 
[
    {
        id: 1,
        Data: 'yes',
        active: true
    },

    {
        id: 2,
        Data: 'yes',
        active: false
    },

    {
        id: 3,
        Data: 'data',
        active: false
    }
]
const result = objects.map((obj, i)=>{
  obj.reason = reasons[i]
  return obj
})
console.log(result)


0
投票

一个简单的

map
函数就可以为您完成此任务。

const reasons = ['a', 'b', 'c'];

const obj = [
  {id: 1, Data: 'yes', active: true },
  {id: 2, Data: 'yes', active: false },
  {id: 3, Data: 'data', active: false }
];

const merged = obj.map((reason, index) => {
  // .reason is your new key, and it gets it from reasons[index]
  reason.reason = reasons[index];
  return reason;
});

merged
的新值:

[
  { id: 1, Data: 'yes', active: true, reason: 'a' },
  { id: 2, Data: 'yes', active: false, reason: 'b' },
  { id: 3, Data: 'data', active: false, reason: 'c' }
]

我希望这就是您想要的,并且这对您有所帮助。

© www.soinside.com 2019 - 2024. All rights reserved.