Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/387.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用JavaScript/jQuery对数组进行排序_Javascript_Jquery - Fatal编程技术网

使用JavaScript/jQuery对数组进行排序

使用JavaScript/jQuery对数组进行排序,javascript,jquery,Javascript,Jquery,我有一个数组,如下所示: 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()但这不起作用,有什么建议吗?在比较之前,您必须格式化输入(通过删除连字符),以获得预期的结

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

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()但这不起作用,有什么建议吗?

在比较之前,您必须格式化输入(通过删除连字符),以获得预期的结果:

var fruits=['0-2'、'1-1'、'12-2'、'14-2'、'2-3'、'21-1'、'4-1'];
水果.分类(功能(a,b){
a=a.替换('-','')
b=b.替换('-','');
返回a-b;
});

console.log(fruits)
在比较之前,您必须格式化输入(通过删除连字符),以获得预期结果:

var fruits=['0-2'、'1-1'、'12-2'、'14-2'、'2-3'、'21-1'、'4-1'];
水果.分类(功能(a,b){
a=a.替换('-','')
b=b.替换('-','');
返回a-b;
});

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

var fruits=['0-2','1-1','12-2','14-2','2-3','21-1','4-1'];
水果.sort((a,b)=>a.split('-')[0]-b.split('-')[0]);

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

var fruits=['0-2','1-1','12-2','14-2','2-3','21-1','4-1'];
水果.sort((a,b)=>a.split('-')[0]-b.split('-')[0]);

原木(水果)太好了。到目前为止你试过什么?如果需要调试帮助,请发布代码。使用带有传递函数的
Array.prototype.sort
()进行比较。到目前为止你试过什么?如果需要调试帮助,请发布代码。使用带有传递函数的
Array.prototype.sort
()进行比较