// 若是是数字排序直接用sort方法能够排序 var numArray = [5,3,10,2]; numArray.sort(function(a,b){ return a-b }) // [2, 3, 5, 10]
// 若是是是汉字用拼音排序,直接用上面的方法,就不会有用,此时找到一个方法localeCompare()进行比较。 var hanziArray = ["已到场","已离场","已结束"]; hanziArray.sort(function(a,b){ return a.localeCompare(b); }) // ["已到场", "已结束", "已离场"]
// 若是不止按照一个关键字排序 data.sort((a: any, b: any) => { // 若是两个值相等的话进行进一步排序 if (a[mainKey] === b[mainKey]) { // 判断是否为数字排序 if (isNaN(a[key] - b[key])) { return order === a[key].localeCompare(b[key]); } else { return a[key] - b[key]; } } else { if (isNaN(b[mainKey] - a[mainKey])) { return mainOrder === a[mainKey].localeCompare(b[mainKey]) } else { return mainOrder === a[mainKey] - b[mainKey]; } } });