所以我有一个对象数组,我正在使用underscore.js'_.groupBy
函数来处理特定情况。如何通过键获得_.groupBy
反向排序?
我有这个----
stooges = [
{name: 'moe', age: 40},
{name: 'larry', age: 50},
{name: 'curly', age: 60},
{name: 'moe', age: 40},
{name: 'larry', age: 50},
{name: 'curly', age: 60}
]
groupBy给了我这个---
_.groupBy(stooges, 'age');
=> {
"40": [{name: 'moe', age: 40}, {name: 'moe', age: 40}],
"50": [{name: 'larry', age: 50}, {name: 'larry', age: 50}],
"60": [{name: 'curly', age: 60}, {name: 'curly', age: 60}]
}
我希望groupBy给我这个---
=> {
"60": [{name: 'curly', age: 60}, {name: 'curly', age: 60}]
"50": [{name: 'larry', age: 50}, {name: 'larry', age: 50}],
"40": [{name: 'moe', age: 40}, {name: 'moe', age: 40}],
}
答案 0 :(得分:0)
对象中的键没有明确定义的顺序 - 顺序可能会从执行变为执行,或从一个JavaScript引擎变为另一个。 (它可能没有,但如果你的代码依赖它,它可能随时中断。)
如果要按特定顺序枚举它们,请使用_.keys
获取结果对象中的键数组,对该数组进行排序并枚举数组,从结果对象中获取相应的组。