// 若是是數字排序直接用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]; } } });