js 根据对象数组中的属性进行排序实现代码


Posted in Javascript onSeptember 12, 2019

这篇文章主要介绍了js 根据对象数组中的属性进行排序实现代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

代码如下

var arr = [
  {name:'a',age:9},
  {name:'b',age:12},
  {name:'c',age:8}
];
 arr.sort((a,b)=>{
  return a.age - b.age
 });
function compare(property){
  return function(a,b){
    var value1 = a[property];
    var value2 = b[property];
    return value1 - value2;
  }
}
console.log(arr.sort(compare('age')))
* 使用例子:newArray.sort(sortBy('number',false)) //表示根据number属性降序排列;若第二个参数不传递,默认表示升序排序
   * @param attr 排序的属性 如number属性
   * @param rev true表示升序排列,false降序排序
   * */
  sortBy: function(attr,rev){
    //第二个参数没有传递 默认升序排列
    if(rev == undefined){
      rev = 1;
    }else{
      rev = (rev) ? 1 : -1;
    }
    
    return function(a,b){
      a = a[attr];
      b = b[attr];
      if(a < b){
        return rev * -1;
      }
      if(a > b){
        return rev * 1;
      }
      return 0;
    }
  }

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
javascript 解析后的xml对象的读取方法细解
Jul 25 Javascript
浅析基于WEB前端页面的页面内容搜索的实现思路
Jun 10 Javascript
javascript arguments使用示例
Dec 16 Javascript
浅谈JavaScript 函数参数传递到底是值传递还是引用传递
Aug 23 Javascript
JavaScript使用forEach()与jQuery使用each遍历数组时return false 的区别
Aug 26 Javascript
AngularJS使用ng-inlude指令加载页面失败的原因与解决方法
Jan 19 Javascript
关于在vue-cli中使用微信自动登录和分享的实例
Jun 22 Javascript
Express系列之multer上传的使用
Oct 27 Javascript
webpack4 处理CSS的方法示例
Sep 03 Javascript
使用electron将vue-cli项目打包成exe的方法
Sep 29 Javascript
使用 Node.js 实现图片的动态裁切及算法实例代码详解
Sep 29 Javascript
微信小程序动画(Animation)的实现及执行步骤
Oct 28 Javascript
JavaScript和TypeScript中的void的具体使用
Sep 12 #Javascript
微信小程序页面调用自定义组件内的事件详解
Sep 12 #Javascript
基于JavaScript 实现拖放功能
Sep 12 #Javascript
Node.JS用纯JavaScript生成图片或滑块式验证码功能
Sep 12 #Javascript
layui 对table中的数据进行转义的实例
Sep 12 #Javascript
layui点击数据表格添加或删除一行的例子
Sep 12 #Javascript
小程序如何支持使用 async/await详解
Sep 12 #Javascript
You might like
PHP下几种删除目录的方法总结
2007/08/19 PHP
深入探讨<br />和 \r\n两者有什么区别??
2013/06/05 PHP
基于PHP微信红包的算法探讨
2016/07/21 PHP
php如何计算两坐标点之间的距离
2018/12/29 PHP
JavaScript 核心参考教程 内置对象
2009/10/13 Javascript
Javascript实现的Map集合工具类完整实例
2015/07/31 Javascript
Bootstrap每天必学之模态框(Modal)插件
2016/04/26 Javascript
纯js实现画一棵树的示例
2017/09/05 Javascript
微信小程序仿微信运动步数排行(交互)
2018/07/13 Javascript
只有 20 行的 JavaScript 模板引擎实例详解
2020/05/11 Javascript
微信小程序用户盒子、宫格列表的实现
2020/07/01 Javascript
JavaScript实现网页动态生成表格
2020/11/25 Javascript
[01:39:04]DOTA2-DPC中国联赛 正赛 SAG vs CDEC BO3 第二场 2月1日
2021/03/11 DOTA
win7安装python生成随机数代码分享
2013/12/27 Python
让python 3支持mysqldb的解决方法
2017/02/14 Python
Python金融数据可视化汇总
2017/11/17 Python
PyQt5每天必学之关闭窗口
2018/04/19 Python
pytorch中tensor的合并与截取方法
2018/07/26 Python
python文件读写代码实例
2019/10/21 Python
Python大数据之网络爬虫的post请求、get请求区别实例分析
2019/11/16 Python
python实现低通滤波器代码
2020/02/26 Python
pyecharts动态轨迹图的实现示例
2020/04/17 Python
Python基于smtplib协议实现发送邮件
2020/06/03 Python
Pytorch mask-rcnn 实现细节分享
2020/06/24 Python
基于tf.shape(tensor)和tensor.shape()的区别说明
2020/06/30 Python
浅谈Python爬虫原理与数据抓取
2020/07/21 Python
哈萨克斯坦最大的时装、鞋子和配饰在线商店:Lamoda.kz
2019/11/19 全球购物
adidas泰国官网:adidas TH
2020/07/11 全球购物
西班牙Polo衫品牌:Polo Club
2020/08/09 全球购物
《毛主席在花山》教学反思
2014/04/20 职场文书
应聘销售主管的求职信
2014/04/26 职场文书
2014年庆祝国庆65周年演讲稿
2014/09/21 职场文书
毕业生实习期转正自我鉴定
2014/09/26 职场文书
稽核岗位职责
2015/02/10 职场文书
海洋天堂观后感
2015/06/05 职场文书
浅谈PostgreSQL表分区的三种方式
2021/06/29 PostgreSQL