如何转换对象列表,例如:
[{id:3, value:"value1"}, {id:4, value:"value2"}]
至
{3:"value1", 4:"value2"}
我不确定这是否是最佳解决方案。但是工作。
var list = [{id:3, value:"value1"}, {id:4, value:"value2"}]
var result = Object.assign({}, ...list.map((obj, index)=>{
return {[obj.id]:obj.value};
}))
console.log(result);
最佳答案
取决于您对“最佳”的定义。但是当我尝试你的解决方案时,reduce()
解决方案和 jsperf 中的简单 for
循环旧的 for
循环是最快的:)
var list = [{id:3, value:"value1"}, {id:4, value:"value2"}];
var result = {};
for (var i = 0; i < list.length; i++){
result[list[i].id] = list[i].value;
}
console.log(result);
关于javascript - 如何将id,值数组列表转换为[id] :[value] type object,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47133075/