js json数组根据属性值排序

 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降序排序
    * */

你可能感兴趣的:(javascript)