js Json配列は属性値に従って並べ替えられます.

704 ワード

 compare: function(arr, rev){
    if (rev == undefined) {
      rev = 1;
    } else {
      rev = (rev) ? 1 : -1;
    }
    return function(a, b) {
      for (var i = 0; i < arr.length; i++) {
        let attr = arr[i]
        if (a[attr] != b[attr]) {
          if (a[attr] > b[attr]) {
            return rev * 1;
          } else {
            return rev * -1;
          }
        }
      }
    }
  },
/**                       
    *     :newArray.sort(sortByArr(['number'],false)) //    number      ;         ,        
    * @param attr       ['name','sex'...],              
    * @param rev true      ,false    
    * */