如何使用spread运算符创建要在forEach循环中添加到JavaScript对象的动态密钥

时间:2018-03-23 12:12:56

标签: javascript

var arr= [{name:'xyz'},{name:'abc'}];

arr.forEach(function(a){
    a.age = 25;
    a.country = 'USA'
    a.technology = 'JavaScript'
});

如何使用ES6语法

为扩展运算符添加这些动态键值对

3 个答案:

答案 0 :(得分:2)

 arr = arr.map(prev => ({ ...prev, age: 25, country:"USA" }));

答案 1 :(得分:2)

我认为您不能使用扩展语法来修改对象,只能创建新对象。如果您想要一些允许您使用Javascript对象文字进行修改的内容,请使用Object.assign()

arr.forEach(a => Object.assign(a, {
    age: 25,
    country: 'USA',
    technology: 'Javascript'
}));

答案 2 :(得分:0)

只需使用此代码:

var arr= [{name:'xyz'},{name:'abc'}];

var obj =  {
    age: 25,
    country: 'USA',
    technology: 'JavaScript'
};

arr.forEach(function(a){
    Object.assign(a, obj);
});

console.log(arr);