7 个答案:

答案 0 :(得分:262)

从lodash 3.5.0开始,您可以使用sortByOrder(在v4.3.0中重命名为orderBy):

var data = _.sortByOrder(array_of_objects, ['type','name'], [true, false]);

由于版本3.10.0,您甚至可以使用标准语义进行排序(asc,desc):

var data = _.sortByOrder(array_of_objects, ['type','name'], ['asc', 'desc']);

在lodash的版本4中,此方法已重命名为orderBy:

var data = _.orderBy(array_of_objects, ['type','name'], ['asc', 'desc']);

答案 1 :(得分:37)

您始终可以使用Array.prototype.reverse()

var data = _.sortBy(array_of_objects, ['type', 'name']).reverse();

答案 2 :(得分:14)

值得注意的是,如果你想对降序的特定属性进行排序,你不想简单地在末尾附加.reverse(),因为这将使所有排序降序。

要使特定排序降序,请将排序从最不重要到最重要排序,在每个要降序的排序后调用.reverse()。

var data = _(data).chain()

.sort("date")

.reverse() // sort by date descending

.sort("name") // sort by name ascending

.result()

由于_的排序是稳定的排序,因此您可以安全地进行排序和反向排序,因为如果两个项目具有相同的属性值,则会保留其顺序。

答案 3 :(得分:8)

深场&多场&不同的方向订购

Lodash> 4

var sortedArray = _.orderBy(mixedArray,

['foo','foo.bar','bar.foo.bar'],

['desc','asc','desc']);

答案 4 :(得分:5)

是否有一些方便的方法来定义每列的方向?

没有。除了通过反转值的回调函数之外,您不能指定排序顺序。对于多列排序,这甚至都不可能。

你可以做到

_.each(array_of_objects, function(o) {

o.typeDesc = -o.type; // assuming a number

});

_.sortBy(array_of_objects, ['typeDesc', 'name'])

对于其他所有内容,您需要使用自定义比较函数求助于本地.sort():

array_of_objects.sort(function(a, b) {

return a.type - b.type // asc

|| +(b.name>a.name)||-(a.name>b.name) // desc

|| …;

});

答案 5 :(得分:2)

在版本4.11.x的文档中说:`

“此方法与_.sortBy类似,不同之处在于它允许指定迭代的排序顺序以进行排序。如果未指定订单,则所有值都按升序排序。否则,指定降序的”desc“顺序或”asc“ “对于相应值的升序排序。”

(来源https://lodash.com/docs/4.17.10#orderBy)

let sorted = _.orderBy(this.items, ['fieldFoo', 'fieldBar'], ['asc', 'desc'])

答案 6 :(得分:0)

你也可以试试这个:

var data= _.reverse(_.sortBy(res.locals.subscriptionList.items, ['type', 'name']));

sortby降序java_lodash多列sortBy降序相关推荐

  1. Python编程语言学习:将多个列表数据保存为dataframe格式数据并按照指定列进行降序排序之详细攻略

    Python编程语言学习:将多个列表数据保存为dataframe格式数据并按照指定列进行降序排序之详细攻略 目录 将多个列表数据保存为dataframe格式数据并按照指定列进行降序排序之详细攻略 输出 ...

  2. java升序降序排列desc,TreeMap升序|降序排列和按照value进行排序

    TreeMap 升序|降序排列 import java.util.Comparator; import java.util.TreeMap; public class Main { public st ...

  3. 如何利用一维数组实现二维数组的多列自由升降序排序过程详解

    如何利用一维数组实现二维数组的多列自由升降序排序过程详解 本例只说明多列排序的实现方式,一维数组的排序已经有过讲解不在赘述.所以本文是在已经完成了一维数组排序的函数封装的基础上完善多列排序的过程的详解 ...

  4. R语言rev函数对数据对象(向量、dataframe通过行或者列)反序实战

    R语言rev函数对数据对象(向量.dataframe通过行或者列)反序实战 目录 R语言rev函数对数据对象(向量.dataframe通过行或者列)反序实战

  5. 【组合数学】非降路径问题 ( 非降路径问题概要说明 | 非降路径问题基本模型 | 非降路径问题拓展模型 1 非原点起点 | 非降路径问题拓展模型 2 有途经点 )

    文章目录 一.非降路径问题 概要说明 二.非降路径问题 基本模型 二.非降路径问题 拓展模型 1 三.非降路径问题 拓展模型 2 组合恒等式参考博客 : [组合数学]二项式定理与组合恒等式 ( 二项式 ...

  6. 关闭自动降频 linux,iPhone如何关闭降频?iPhone手动关闭降频方法[多图]

    iPhone手机最大的特点就是流畅,长时间流畅.这点就取决于他的系统了,但是前段时间爆出来的降频让大家很失望.现在ios11.3出来了,把选择权给了用户,今天我们就来教大家怎么手动关闭降频. 打开手机 ...

  7. Apache 降权 禁用php,什么是降权?

    降权是指搜索引擎给网站评定的级别下降了,也是搜索引擎对网站进行的一种处罚方式,降权一般分为3种,分别是小幅降权.大幅降权和K站,这3种降权形式的产生是视网站作弊或者黑帽手法严重度而决定的. 降权,一般 ...

  8. 已知二叉树后序遍历序列是DABEC 中序遍历列是 DEBAC ,它的前序遍历序列是

    已知二叉树后序遍历序列是DABEC 中序遍历列是 DEBAC ,它的前序遍历序列是: ----C ---/ --E -/-\ D---B -----\ ------A 我知道答案思念是这个....我想 ...

  9. 二手房买卖中介佣金降0.5% 相关费用总额降80%

    二手房买卖中介佣金降0.5% 相关费用总额降80% 作者:未知 更新时间:2011-8-30 11:22:02 来源:√三亚房地产信息网-新闻频道 [字号: 大 中 小] 本条信息浏览人次共有19次 ...

  10. 二叉树---根据【先序、中序序列】and【中序、后序序列】,画出二叉树!

    前提说明 : 经典例题(1) : 例:已知先序序列和中序序列分别为:         先序序列:18    14    7    3    11    22     35      27 中序序列: ...

最新文章

  1. [luogu5004]专心OI - 跳房子【矩阵加速+动态规划】
  2. 项目、SVN clean的一些事
  3. 第18课:模型部署上线的几种服务发布方式
  4. 把本地文件上传到gitee
  5. mysql报错代码10051_zabbix_server 不能监听端口tcp 10051(示例代码)
  6. 十一:贪心算法-寻找硬币
  7. 多线程—— GIL(全局解释器锁)
  8. 常用html标签 —— 链接的颜色
  9. Word 相关的快捷键
  10. phpcmsv9 更换域名出现页面无法访问后怎么办
  11. 让图片左右缓慢移动的MoveView
  12. 微信文件夹下不可言说的秘密自动生成小视频文件
  13. 机器人手眼标定原理介绍(含详细推导过程)使用Tsai-Lenz算法
  14. python 打卡记录代码_Python的100天打卡(上)
  15. fn键台式计算机在哪,fn键在哪?小鱼教您fn键使用方法
  16. wps将批量数字转换成条形码_WPS怎么批量制作条码.
  17. js 中按下键盘事件
  18. java jedis.incr()_Java Jedis.incr方法代碼示例
  19. 气相色谱仪排除问题S级详情讲解【Chro】
  20. CVPR 2021 | 腾讯优图20篇论文入选,含人脸识别、时序动作定位、视频动作分割等领域...

热门文章

  1. 打喷嚏的龙(dargon)
  2. ubuntu:beyond compare 4 This license key has been revoked 解决办法
  3. 翻译:Tree Energy Loss: Towards Sparsely Annotated Semantic Segmentation
  4. 笔记本和利用服务器算力直连,使用闲置服务器的CPU算力挖掘Monero—Windows篇
  5. 961 计算机学科专业基础综合,2018年北京航空航天大学961计算机学科专业基础综合考研复习资料...
  6. 编码,隐匿在计算机软硬件背后的语言读书笔记(9)
  7. 游戏程序员的学习之路(中文版)
  8. 攻防世界CRYPTO新手区wp
  9. java.lang.IllegalArgumentException: Scrapped or attached views may not be recycled.
  10. 计算机基础晦涩难懂?那你是没看他的图解文章!