繁体   English   中英

Javascript尝试对混合数组进行数字排序

[英]Javascript trying to sort a mixed array numerically

我正在尝试对数组进行排序

arr = ["Joe1,345", "James,1002", "Bill,24"]. 

我需要按数字降序排列它们,但是最后可能会有不同数量的数字。 我尝试了冒泡排序:

function bubbleSort(a) {
    var swapped;
    do {
        swapped = false;
        for (var i=0; i < a.length-1; i++) {
            if (a[i] > a[i+1]) {
                var temp = a[i];
                a[i] = a[i+1];
                a[i+1] = temp;
                swapped = true;
            }
        }
    } while (swapped);
    return a;
}

但这没有用-有人知道如何实现这一目标吗? 我看过其他人在做类似的事情,但他们的答案似乎前面只写着一个常数。

非常感谢

您可以将Array#sort()与适当的回调一起用于此任务

 var arr = ["Joe1,345", "James,1002", "Bill,24"]; arr.sort(function (a, b) { var aa = a.split(','), bb = b.split(','); return bb[1] - aa[1]; }); console.log(arr); 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM