Javascript按姓氏排序字符串数组

B.Uriah 0 javascript arrays sorting string

我有一个数组:

arr4=["John Alpha","Allen Beta", "Elle Cappa"];

我有一个sort函数,它将字符串数组按降序排序

function getSize(arr){
return arr.length;
}

function sortStringArrDes(arr){
arrSize=getSize(arr);
var temp;
for(j=0; j<arrSize-1; j++){
    for(i=0; i<arrSize-1; i++){
        if (arr[i] < arr[i+1]){
            temp = arr[i+1];
            arr[i+1] = arr[i];
            arr[i] = temp;
            }
        }
    }
    return arr;
}

我可以使用sortStringArrDes按姓氏对数组进行排序,还是有另一种不太复杂的方法来执行此操作?

CertainPerfo.. 9

您可以考虑使用本机Array.prototype.sort方法,而不是尝试重新发明轮子:

const arr4 = ["John Alpha", "Elle Cappa", "Allen Beta"];
arr4.sort((a, b) => b.split(' ')[1].localeCompare(a.split(' ')[1]));
console.log(arr4);

.localeCompare() 返回一个整数,表示被调用的字符串或传递的字符串是按字母顺序排在第一位