数组根据key值排序

    //封装一个数组排序方法
 function compare(key, desc) {//key:  用于排序的数组的key值; desc: 布尔值,为true是升序排序,false是降序排序
      return function(a, b) {
        let  value1 = a[key];
        let  value2 = b[key];
        if (desc == true) {
          // 升序排列
          return value1 - value2;
        } else {
          // 降序排列
          return value2 - value1;
        }
      };
    }
    //调用
    arr.sort(compare('age',false));    

以上代码来源:js:数组对象按key值进行升序降序排序

// 升序
	quickFun(params) {
	  //当进行递归的数组的长度小于等于 1 的时候直接返回该数组
	  if (params.length <= 1) {
	          return params;
	  }
	  let middleIndex = Math.floor(params.length / 2); //获取基准数据的下标
	  let middleItem = params.splice(middleIndex, 1)[0]; //截取基准数据
	  let leftArr = [];
	  let rightArr = [];
	  for (let k = 0; k < params.length; k++) {
	          if (params[k].y > middleItem.y) { //切换比较对象
	                  rightArr.push(params[k]);
	          } else {
	                  leftArr.push(params[k]);
	          }
	  }
	  return this.quickFun(leftArr).concat(middleItem, this.quickFun(rightArr)); //将左边数组,基准数据和右边数组进行拼接成一个完整的数组
	},
 //使用
result = vm.quickFun(result)