數組中已存在兩個用來排序的方法:reverse()和sort()方法
隻是用來反轉數組的話用reverse方法就可以了
var arr = [1,5,6,42,89,2,1]
arr.reverse(); //反轉數組,不夠靈活 是以才有了sort()方法
console.log(arr); //[1, 2, 89, 42, 6, 5, 1]
如果要對數組進行排序就需要用sort()方法來做
arr.sort();
console.log(arr); //[1, 1, 2, 42, 5, 6, 89] 這樣明顯是錯的
sort(fun):如果不傳函數的話,内置對象會按照字元串Unicode碼位點來排序(升序),這樣不是我們想要的,是以就需要寫一個函數來定義規則
這是一個簡單的排序,能滿足大多時候的使用
function compare(a,b){ //升序排序 如果要降序的話就b-a;
return a - b; //排序規則按照從小到大 會比對好幾次 知道排序成功位置
//裡面其實有
}
上面兩種方法的傳回值都是經過排序之後的數組
function compare(a,b){
if(a<b){
return -1;
}else if (a>b){
return 1;
}else{
return 0;
}
}
兩種排序都可以使用,可以自行選擇使用