天天看點

數組重排和反轉數組中已存在兩個用來排序的方法:reverse()和sort()方法

數組中已存在兩個用來排序的方法: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;
            }
        }
           

兩種排序都可以使用,可以自行選擇使用

繼續閱讀