首页 文章

使用lodash按值排序数组(整数)

提问于
浏览
34

我真的在努力,但我找不到解决方案 .

我有一个数组,我想按值(所有整数)排序 . 我想,好吧,让我们使用lodash,肯定必须有一个方便的功能 .

不知何故,我无法想出这样做 .

到目前为止我得到了这个:

myArray = [3, 4, 2, 9, 4, 2]

如果我使用这段代码,我得到了一个结果:

myArray = _(myArray).sort();

但不幸的是,返回值似乎不再是一个数组 . 排序后myArray.length未定义 .

我找到了成千上万的lodash排序数组的例子,但总是通过密钥 . https://lodash.com/docs#sortBy

有人可以告诉我如何将以下返回结果作为数组?:

[2, 2, 3, 4, 4, 9]

它不会那么困难,但不知怎的,我没有完成它......

有时候我认为lodash文档有点复杂 . 我可能只是错过了一个重要的细节......

1 回答

  • 59

    您可以在此处使用sortBy()功能 . 您不必指定密钥,因为它将回退到identity() .

    var myArray = [ 3, 4, 2, 9, 4, 2 ];
    
    _.sortBy(myArray);
    // → [ 2, 2, 3, 4, 4, 9 ]
    
    _(myArray).sortBy().take(3).value();
    // → [ 2, 2, 3 ]
    

相关问题