首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用JavaScript/jQuery对数组排序

使用JavaScript/jQuery对数组排序
EN

Stack Overflow用户
提问于 2018-04-24 04:17:34
回答 2查看 147关注 0票数 0

我有一个数组,如下所示:

代码语言:javascript
复制
var fruits = ['0-2','1-1','12-2','14-2','2-3','21-1','4-1'];

它给了我这样的输出:

0-2,1-1,12-2,14-2,2-3,21-1,4-1

我想对这个数组进行排序,并获得如下输出:

0-2,1-1,2-3,4-1,12-2,14-2,21-1使用JavaScript/jQuery。

我厌倦了使用fruits.sort();,但那不起作用,有什么建议吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-04-24 04:21:22

在进行比较之前,您必须格式化输入(移除连字符)才能得到预期的结果:

代码语言:javascript
复制
var fruits = ['0-2','1-1','12-2','14-2','2-3','21-1','4-1'];

fruits.sort(function(a, b){
  a = a.replace('-', '')
  b = b.replace('-', '');
  return a - b;
});
console.log(fruits)

票数 5
EN

Stack Overflow用户

发布于 2018-04-24 04:21:58

您必须传递一个compareFunction和split()字符串,并比较数组的第一个元素

代码语言:javascript
复制
var fruits = ['0-2', '1-1', '12-2', '14-2', '2-3', '21-1', '4-1'];

fruits.sort((a, b) => a.split('-')[0] - b.split('-')[0]);

console.log(fruits);

医生:排序()

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49993350

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档