是否有一种简单的方法可以使用扩展...运算符将对象数组与另一个对象组合以创建单个对象?这个例子展示了我想要完成的事情:
const arrayOfObjects = [
{ x: 'foo' },
{ y: 'bar' }
];
const obj = {
hello: 'world'
};
Run Code Online (Sandbox Code Playgroud)
我正在寻找的输出如下:
{
x: 'foo',
y: 'bar',
hello: 'world'
}
Run Code Online (Sandbox Code Playgroud)
除了其他方面,我尝试了以下内容,但它并没有完全给出预期的输出.
{
hello: 'world'
...arrayOfObjects
}
// Gives
{
0: { x: 'foo' },
1: { y: 'bar' },
hello: 'world'
};
Run Code Online (Sandbox Code Playgroud)
聪明地使用扩展运算符是否可以做到这一点?
Nen*_*car 20
您可以使用Object.assign()扩展语法...
const arrayOfObjects = [{
x: 'foo'
}, {
y: 'bar'
}];
const obj = {
hello: 'world'
};
var result = Object.assign({}, obj, ...arrayOfObjects);
console.log(result)Run Code Online (Sandbox Code Playgroud)
你可以使用 Object.assign();
Object.assign(obj, ...arrayOfObjects)
Run Code Online (Sandbox Code Playgroud)
此选项将改变对象 obj 而不是创建新实例。