如果我有一个数组:
myArray = [['0','Mouse'],['1','Dog'],['2','Cat'],['3','Gerbil']];
如何根据动物的数字对数组进行按字母顺序排列?
myArray = alpha(myArray);
结果:
myArray = [['2','Cat'],['1','Dog'],['3','Gerbil'],['0','Mouse']];
答案 0 :(得分:2)
您可以使用sort
功能
var myArray = [['0','Mouse'],['1','Dog'],['2','Cat'],['3','Gerbil']];
console.log(alpha(myArray));
var arr2 = [['5','Mouse'],['0','Mouse'],['1','Dog'],['2','Cat'],['3','Gerbil']];
console.log('another array', alpha(arr2));
function alpha(arr) {
return arr.sort((a, b) => a[1] > b[1]);
}

答案 1 :(得分:1)
您可以使用Array#sort
结合使用
sort()
方法对数组的元素进行排序并返回数组。排序不一定是stable。默认排序顺序是根据字符串Unicode代码点。
localeCompare()
方法返回一个数字,指示引用字符串是在排序顺序之前还是之后或与给定字符串相同。
var array = [['5', 'Mouse'], ['0', 'Mouse'], ['1', 'Dog'], ['2', 'Cat'], ['3', 'Gerbil']];
array.sort(function (a, b) {
return a[1].localeCompare(b[1]);
});
console.log(array);
.as-console-wrapper { max-height: 100% !important; top: 0; }