Javascript 使用扩展运算符将对象推入阵列?

Javascript 使用扩展运算符将对象推入阵列?,javascript,arrays,ecmascript-6,Javascript,Arrays,Ecmascript 6,我有一个像这样的对象数组 let array1 = [{id:1,name:'One'}] let array3 = [{id:1,name:'One'}, {id:2, name:'Two'}, {id:3, name: 'Three'}] 每当我调用api时,对象数组就会像这样更新 let array2 = [{id:1,name:'One'}, {id:2, name:'Two'}] 第三次是这样 let array1 = [{id:1,name:'One'}] let array

我有一个像这样的对象数组

let array1 = [{id:1,name:'One'}]
let array3 = [{id:1,name:'One'}, {id:2, name:'Two'}, {id:3, name: 'Three'}]
每当我调用api时,对象数组就会像这样更新

let array2 = [{id:1,name:'One'}, {id:2, name:'Two'}]
第三次是这样

let array1 = [{id:1,name:'One'}]
let array3 = [{id:1,name:'One'}, {id:2, name:'Two'}, {id:3, name: 'Three'}]
现在,我尝试为数组中的每个对象添加键值对,如下所示

obj = {
    key: 'value'
}
[...array1, obj]
我得到的输出类似于
[{id:1,name:'One'},{key:'value'}]


但是预期的输出是
[{id:1,name:'One',key:'value'}]
在每次api调用之后,应该将该对象推入数组中

如果希望所有数组项与该对象合并,可以尝试以下方法:

let array3=[{id:1,名称:'One'},{id:2,名称:'Two'},{id:3,名称:'Three'}];
设obj={key:'value'};
设res=array3.map(i=>Object.assign(i,obj));

控制台日志(res)如果要向数组中的每个对象添加键值对,除了使用扩展语法外,还需要在数组上进行映射

let array1=[{id:1,name:'One'}]
常量对象={
关键字:“值”
}
array1=array1.map(val=>({…val,…obj}))

控制台日志(array1)为什么您认为这是可能的?