javascript - 下划线JS : groupby + sortby

标签 javascript underscore.js

关于如何使用 UnderscoreJS 同时执行 grupby + sortby 有什么建议吗?

有以下系列,我想找到每个季节的最低价格:

var d = [{ 
    "price": 27.25,
    "season": 2
},
{ 
    "price": 10,
    "season": 3
},
{ 
    "price": 21,
    "season": 2
}];

我可以使用以下方法进行分组:

_.chain(d).groupBy('season').map(function(value, key) {
return {
            season: key,
            obj: value

        }
    }).value();

这让我:

[
 {"season":"2","obj":[{"price":27.25,"season":2},{"price":21,"season":2}]},
 {"season":"3","obj":[{"price":10,"season":3}]}
] 

最佳答案

试试这个:

var output = _.chain(d).groupBy("season").map(function (group) {
    return _.chain(group).sortBy("price").first().value();
}).value();

查看演示:http://jsfiddle.net/Ns2MJ/

关于javascript - 下划线JS : groupby + sortby,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23364423/

相关文章:

javascript - 从 upsert (insertOrUpdate) Sequelize Node.js 获取插入行的 id

javascript - 将 URL 从输入转换为链接

javascript - 在 Sencha Touch 中单击 selectField 即可打开键盘

javascript - Leafletjs - 数组中存在传单点

javascript - 了解 BackboneJS

javascript - HTML 表中删除的行保留在 ReactDOM 中

javascript - JavaScript中如何获取数组的平均值

javascript - backbone.js - 随请求获取额外数据

javascript - 为 Mongodb 创建多个动态对象 NodeJs 查询

javascript - 将字符串转换为 _.each 中的对象