?function?sortArray(arr,?key,?isDesc?=?false)?{
????????????if?(!arr)?{
????????????????return?false;
????????????}
????????????let?isArray?=?arr?instanceof?Array;
????????????if?(!isArray)?{
????????????????return?false;
????????????}
????????????if?(arr.length?<=?1)?{
????????????????return?arr;
????????????}
????????????let?temp?=?JSON.parse(JSON.stringify(arr));
????????????if?(key)?{
????????????????return?temp.sort((a,?b)?=>?{
????????????????????if?(isDesc)?{
????????????????????????return?b[key]?-?a[key];
????????????????????}?else?{
????????????????????????return?a[key]?-?b[key];
????????????????????}
????????????????});
????????????}?else?{
????????????????return?temp.sort((a,?b)?=>?{
????????????????????if?(isDesc)?{
????????????????????????return?b?-?a;
????????????????????}?else?{
????????????????????????return?a?-?b;
????????????????????}
????????????????});
????????????}
? }
用途: 給數(shù)組排序
?參數(shù):arr, key, isDesc
? ? * arr 可以是普通數(shù)據(jù)? 可以json數(shù)組
? ? * key -> 有key就是json數(shù)組,沒有key就是普通數(shù)組排序
? ? * desc -> true:從大到小? false -> 從小到大(默認),
例子1:
?let?arr?=?[36,74,21,7,367,16,86,85,94,241];
sortArray(arr) // [7, 16, 21, 36, 74, 85, 86, 94, 241, 367 ]
sortArray(arr,'',true)? //?[367, 241, 94, 86, 85, 74, 36, 21, 16, 7]
例子2:
??let?jsonarr?=?[
????????????{name:'小明',age:19,score:29},
????????????{name:'花花',age:29,score:8},
????????????{name:'蘭蘭',age:45,score:12},
????????????{name:'妮妮',age:24,score:32},
????????????{name:'巴巴',age:32,score:65},
????????????{name:'艾艾',age:4,score:89},
????????????{name:'赫赫',age:25,score:38},
????????];
sortArray(jsonarr,'score')?

sortArray(jsonarr,'age')?
