我有以下数组:
[
{ user: 5fde62aa0cec1598fda103ac, feeling: 'positive' },
{ user: 5fde62a10cec1598fd9f9222, feeling: 'indifferent' },
{ user: 5fde62aa0cec1598fda103ac, feeling: 'positive' },
{ user: 5fde62a10cec1598fd9f9222, feeling: 'negative' },
{ user: 5fde62930cec1598fd9d426c, feeling: 'positive' }
]
通过 _.chain 中的 .groupBy 运行它后,我得到以下信息:
{
'5fde62aa0cec1598fda103ac': { positive: 2 },
'5fde62a10cec1598fd9f9222': { negative: 1, indifferent: 1 },
'5fde62930cec1598fd9d426c': { positive: 1 }
}
我如何才能将其转换为以下内容?
[
{id:'5fde62aa0cec1598fda103ac', positive: 2, negative: 0, indifferent: 0 }
{id:'5fde62a10cec1598fd9f9222', positive: 0, negative: 1, indifferent: 1 }
{id:'5fde62930cec1598fd9d426c', positive: 1, negative: 0, indifferent: 0}
]
我怀疑 .transform 是正确的,只是不知道如何使它工作。
答案 0 :(得分:2)
_.transform(theData, function(result, value, key) {
result.push({
id : key,
positive: value.positive || 0,
negative: value.negative || 0,
indifferent: value.indifferent || 0
})
}, []);