1. 程式人生 > >js sort排序

js sort排序

這個是sort方法裡的那個比較函式的特殊的返回值,比較函式的引數 a 和 b 代表數組裡的兩個元素,如果 a 小於 b,排序後的陣列 a 在 b 前面,此時返回一個負數 (即上面的 return -1)如果 a 等於 b,排序後兩者位置不變,此時返回 0 (即上面的 return 0)如果 a 大於 b,排序後 a 在 b 後面, 返回一個正數 (即上面的 return 1)
//比較函式一般簡寫成:

arr.sort( function(a,b){ return a-b // 升序 } );
arr.sort( function(a,b){ return b-a // 降序 } ); 

// 對應上面的解釋好好想下,不難理解為什麼這樣寫

var array = [4,8,128,1,64,2,16,32];
array = array.sort(compare);
function compare(value1, value2){
    if(value1 < value2){
           return -1;
      }else if(value1 > value2){
           return 1;
      }else{
           return 0;
      }
 }

以上程式碼等價於:

array = array.sort(function(value1, value2){
    
return value1 < value2 ? -1 : 1; });

這裡用來記錄下

以上內容轉自https://blog.csdn.net/jbguo/article/details/82802065