簡體   English   中英

Javascript數組按姓氏,名字排序

[英]Javascript Array sort by last name, first name

我在JavaScript中有以下數組,我需要按姓氏對它們進行排序。

var names = [Jenny Craig, John H Newman, Kelly Young, Bob];

結果將是:

Bob, 
Jenny Craig, 
John H Newman, 
Kelly Young 

有關如何執行此操作的任何示例?

嘗試這個:

function compare(a, b) {
    var splitA = a.split(" ");
    var splitB = b.split(" ");
    var lastA = splitA[splitA.length - 1];
    var lastB = splitB[splitB.length - 1];

    if (lastA < lastB) return -1;
    if (lastA > lastB) return 1;
    return 0;
}

var names = ["John H Newman", "Jenny Craig", "Kelly Young", "Bob"];
var sorted = names.sort(compare);
console.log(sorted);

這是一個小提琴

function lastNameSort(a,b) {
    return a.split(" ").pop()[0] > b.split(" ").pop()[0]
};
names.sort(lastNameSort);

這是受這個答案的啟發。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM