我真的很苦恼,但我找不到解决办法。
我有一个数组,并且我想按值(所有整数)对其进行排序。我想,好吧,让我们使用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文档有点复杂。我可能只是缺少一个重要的细节...
myArray = myArray.sort()
。 - PetemyArray.sort()
对于数字来说是行不通的,因为这个JavaScript函数会将数字排序,就好像它们是字符串一样。所以[3, 1, 2, 11234]会被排序成[1, 11234, 2, 3]。你必须进行一些愚蠢的转换才能让JS将其作为数字进行排序。如果可以的话,我建议使用Lodash的_.sortBy()。参见此处。 - FireDragon