我有这个数组,我想对它进行排序:
['reactor-sum', 'reactor-sum-23', 'reactor-sum-15', '99', 'reform-match-5', 'reform-match', 'docker-rev']我想让它以我拥有的方式排序: 1)数字首先按字母顺序排序,如果字符串末尾有数字-首先放没有数字的字符串,然后是按数字排序的字符串。
预期结果数组:
['99',
'docker-rev',
'reactor-sum',
'reactor-sum-15'
'reactor-sum-23',
'reform-match',
'reform-match-5']到目前为止,我尝试了如下内容:
const sortAlphaNum = (a, b) => a.localeCompare(b, 'en', { numeric: true });
searchResults.sort(sortAlphaNum);和常规的.sort(),但是我不太清楚如何实现我想要的。
有谁知道如何对这个数组进行最好的排序?我最大的问题是把非数字字符串放在有数字的字符串前面,比如: example,example1
发布于 2020-03-05 21:56:15
普通的sort()应该可以开箱即用。查看此jsFiddle
https://stackoverflow.com/questions/60546575
复制相似问题