我有一个声明的数组使用Object.assign:
var obj = [{
id: 1,
value: 'abc'
}, {
id: 2,
value: 'xyz'
}];
console.log(Object.assign({}, obj));Run Code Online (Sandbox Code Playgroud)
它正在变换为,
{
'0': { id: 1, value: 'abc' },
'1': { id: 2, value: 'xyz' }
}
Run Code Online (Sandbox Code Playgroud)
不过,我需要有这样的作为,(这里1并2代表id我的对象的属性)
{
'1': {id: 1, value: 'abc'},
'2': {id: 2, value: 'xyz'}
}
Run Code Online (Sandbox Code Playgroud)
我已经尝试了一些,但没有运气,有人可以解决一些问题吗?
您可以使用所需的键映射对象中的对象,并将其分配给单个对象.
var objects = [{ id: 1, value: 'abc' }, { id: 2, value: 'xyz' }],
result = Object.assign(...objects.map(o => ({ [o.id]: o })));
console.log(result);Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
71 次 |
| 最近记录: |