如何在JavaScript中对数组进行排序

前端之家收集整理的这篇文章主要介绍了如何在JavaScript中对数组进行排序前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我没有使用关联数组.我正在使用像这样的1d数组,

array("1,a","5,b","2,c","8,d","6,f");

我该如何排序这个数组?

结果应该是,f",d");

最佳答案
我将继续并假设您希望先按数字部分排序,按数字排序,然后在逗号后面的位上进行二级词法(字符串)排序.这样一个像“11,a”这样的值将在“2,a”之后结束 – 如果你只是做一个默认排序“11,a”将在“2,a”之前结束.所以:

var a = ["1,"11,"24,z",f"];

a.sort(function(a,b) {
   var aparts = a.split(","),bparts = b.split(",anum = +aparts[0],// convert first part to number
       bnum = +bparts[0],aletter = aparts[1],bletter = bparts[1];

   if (anum === bnum)
      return aletter < bletter ? -1 : aletter === bletter ? 0 : -1;
   else
      return anum - bnum;
});

结果:

["1,z"]
原文链接:https://www.f2er.com/jquery/428527.html

猜你在找的jQuery相关文章