簡體   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