在我的节点REST应用程序中,我有一个函数可以在数据库中查询多个记录并返回一个对象数组
由于我希望它返回一个JSON对象,我需要一种方法将对象数组转换为包含所有记录的单个对象。
不幸的是,我无法在互联网上找到一个关于这样做的例子。
任何帮助将不胜感激。
答案 0 :(得分:4)
你为什么要那样做?它完全没有JSON字符串化一个项目数组,你会得到像
这样的结构"[{},{},{},...]"
这甚至可能是一个优势,因为您保证物品的订单。
答案 1 :(得分:1)
请参阅underscore.js的object function。
答案 2 :(得分:0)
让我们假设您有一个对象数组,其格式为:
log {
name: "foo",
log: "bar"
}
你能做到:
var logs,//Array of logs
logObj = {}
for(i=0, i<logs.Length i++) {
logObj[logs[i].Name] = logs[i].log;
}
循环后logObj应为:
logObj {
foo: bar,
nextName: cool comment,
etc.
}
答案 3 :(得分:0)
我只需要使用共享表单组件的响应来完成此操作,而且很庆幸的是,在一个带有某些新JS功能的衬里中完成该操作非常简单。
const arr = [
{ name: 'Colin' },
{ length: 162 },
{ colour: 'pink' }
]
const obj = arr.reduce((acc, element) => Object.assign(acc, ...element), {})
/*
obj = {
name: 'Colin',
length: 162,
colour: 'pink'
}
*/