1.數(shù)字排序
var att = [14,25,1,98,57,6,98];
att.sort((a,b)=>{
return a - b;
})
console.log(att);//[1, 6, 14, 25, 57, 98, 98]
2.純漢字排序
var att1 = ['武漢', '北京', '上海', '天津'];
att1.sort (
function compareFunction(param1, param2) {
return param1.localeCompare(param2,"zh");
}
);
console.log(att1);//["北京", "上海", "天津", "武漢"]
3.純字母
var arr2 = ["ssdas","asd","sfdf","bsad","psi"];
arr2.sort (function(a,b){return a.localeCompare(b)});
console.log(arr2);//["asd", "bsad", "psi", "sfdf", "ssdas"]
4.字母+漢字(先把漢字排完在排字母)
var arr3 = ["a水電費(fèi)","b是蔣介石的",'武漢', '北京',"asds",'上海', '天津',"啊行行行","是的","cs是否","b阿斯蒂芬"];
arr3.sort (
function compareFunction(param1, param2) {
return param1.localeCompare(param2,"zh");
}
);
console.log(arr3);//["啊行行行", "北京", "上海", "是的", "天津", "武漢", "a水電費(fèi)", "asds", "b阿斯蒂芬", "b是蔣介石的", "cs是否"]
5.漢字+字母(先漢字后字母)
思路:先把漢字轉(zhuǎn)化為拼音然后排序,漢字轉(zhuǎn)化拼音的插件 pinyin.js脚线,引入pinyin.js
下載鏈接: https://pan.baidu.com/s/1GAfgq8tIzLPcUX8NQoDreA 提取碼: i8tz
var arr4 =["a北京","b啊蔣介石的",'武漢', '北京', '曖昧', '天津',"a行行行","是的","cs是否","b阿斯蒂芬","陛下","啊破"];
var resultArray = arr4.sort(
function compareFunction(param1, param2) {
return param1.localeCompare(param2,"zh");
}
);
resultArray = resultArray.sort(
function compareFunction(param1, param2) {
return CC2PY(param1).toLowerCase().trim().split("")[0].localeCompare(CC2PY(param2).toLowerCase().trim().split("")[0],"zh");
}
);
console.log(resultArray);//["啊破", "曖昧", "a北京", "a行行行", "北京", "陛下", "b是蔣介石的", "b阿斯蒂芬", "cs是否", "是的", "天津", "武漢"]