将键值对添加到数组中的所有对象 [英] Add key value pair to all objects in array

查看:522
本文介绍了将键值对添加到数组中的所有对象的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想向数组中的所有对象添加一个key:value参数.

I wanted to add a key:value parameter to all the objects in an array.

例如:

var arrOfObj = [{name: 'eve'},{name:'john'},{name:'jane'}];

现在,我想为所有对象添加一个新参数isActive,以便生成的数组看起来像这样.

Now I wanted to add a new parameter, isActive to all the objects so the resulting array will look like.

例如:

    [{
    name: 'eve',
    isActive: true
}, {
    name: 'john',
    isActive: true
}, {
    name: 'jane',
    isActive: true
}]

我总是可以遍历数组并插入键值对.但是想知道是否有更好的方法

I can always loop through the array and insert a key,value pair. But was wondering if there was a better way to do so

推荐答案

您可以使用map()

var arrOfObj = [{
  name: 'eve'
}, {
  name: 'john'
}, {
  name: 'jane'
}];

var result = arrOfObj.map(function(o) {
  o.isActive = true;
  return o;
})

console.log(result)

如果要保留原始数组,可以使用Object.assign()

If you want to keep original array you can clone objects with Object.assign()

var arrOfObj = [{
  name: 'eve'
}, {
  name: 'john'
}, {
  name: 'jane'
}];

var result = arrOfObj.map(function(el) {
  var o = Object.assign({}, el);
  o.isActive = true;
  return o;
})

console.log(arrOfObj);
console.log(result);

这篇关于将键值对添加到数组中的所有对象的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆