前端列表数据根据某属性排序

参考:https://www.cnblogs.com/ttjm/p/10190074.html

原文内容

function  compare(property,sort){

	return function(a,b){
	
		var value1=a[property];
		
		var value2=b[property];
		
		if(sort==1){
		
			return value1 - value2;
		
		}else{
		
			return value2 - value1;
		
		}
	
	}

};


调用 arr.sort(compare(property,1))

sort =1 是正序

sort = -1 是倒序

个人使用

// 对数组根据某属性字段进行排序
compare(property, sortRule){
  let that = this;
  return function(obj1, obj2){
    let value1 = obj1[property];
    let value2 = obj2[property];
    if(sortRule == 'ASC' || sortRule == 'asc'){
      //升序
      return value1 - value2;
    } else if(sortRule == 'DESC' || sortRule == 'desc'){
      //降序
      return value2- value1;
    } else {
      that.msgError("排序规则有误");
    }
  }
},

// 对树根据项次排序
sortBySeq(list, sortRule){
  if(list.length > 0){
      // 对最高父节点排序
      list.sort(this.compare('materialtypeSeq', sortRule));
      // 递归排序子节点
      list.forEach(item => {
        if(item.children != undefined){
          this.sortBySeq(item.children, sortRule);
        }
      });
  }
  return;
},
posted @   →_→BéLieve  阅读(3)  评论(0编辑  收藏  举报  
相关博文:
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
点击右上角即可分享
微信分享提示