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 相关文章推荐
用脚本调用样式的几种方法
Dec 09 Javascript
javascript新手语法小结
Jun 15 Javascript
深入document.write()与HTML4.01的非成对标签的详解
May 08 Javascript
js实现的页面矩阵图形变换特效
Jan 26 Javascript
JQuery 设置checkbox值二次无效的解决方法
Jul 22 Javascript
简单实现js倒计时功能
Feb 13 Javascript
javascript设计模式之模块模式学习笔记
Feb 15 Javascript
javascript实现秒表计时器的制作方法
Feb 16 Javascript
微信小程序开发之好友列表字母列表跳转对应位置
Sep 26 Javascript
除Console.log()外更多的Javascript调试命令
Jan 24 Javascript
浅谈Postman解决token传参的问题
Mar 31 Javascript
jQuery实现鼠标滑过商品小图片上显示对应大图片功能【测试可用】
Apr 27 jQuery
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
codeigniter数据库操作函数汇总
2014/06/12 PHP
YII Framework框架教程之日志用法详解
2016/03/14 PHP
ExtJS4 Grid改变单元格背景颜色及Column render学习
2013/02/06 Javascript
JS控制阿拉伯数字转为中文大写示例代码
2013/09/04 Javascript
JavaScript eval() 函数介绍及应用示例
2014/07/29 Javascript
jquery+CSS实现的水平布局多级网页菜单效果
2015/08/24 Javascript
利用JS生成博文目录及CSS定制博客
2016/02/10 Javascript
NodeJS使用七牛云存储上传文件的方法
2017/07/24 NodeJs
JavaScript模拟文件拖选框样式v1.0的实例
2017/08/04 Javascript
BootStrap下的弹出框加载select2框架失败的解决方法
2017/08/31 Javascript
微信小程序结合mock.js实现后台模拟及调试
2019/03/28 Javascript
微信小程序实现折线图的示例代码
2019/06/07 Javascript
jQuery模仿ToDoList实现简单的待办事项列表
2019/12/30 jQuery
JavaScript之scrollTop、scrollHeight、offsetTop、offsetHeight等属性学习笔记
2020/07/15 Javascript
vue+elementui实现点击table中的单元格触发事件--弹框
2020/07/18 Javascript
[00:57]辉夜杯战队访谈宣传片—VG
2015/12/25 DOTA
[01:04:08]完美世界DOTA2联赛PWL S3 INK ICE vs GXR 第一场 12.16
2020/12/18 DOTA
Python 序列的方法总结
2016/10/18 Python
python并发2之使用asyncio处理并发
2017/12/21 Python
解决Matplotlib图表不能在Pycharm中显示的问题
2018/05/24 Python
Python 使用类写装饰器的小技巧
2018/09/30 Python
python用opencv批量截取图像指定区域的方法
2019/01/24 Python
使用pandas 将DataFrame转化成dict
2019/12/10 Python
浅谈numpy中np.array()与np.asarray的区别以及.tolist
2020/06/03 Python
python中线程和进程有何区别
2020/06/17 Python
HTML5仿微信聊天界面、微信朋友圈实例代码
2018/01/29 HTML / CSS
Debenhams爱尔兰:英国知名的百货公司
2017/01/02 全球购物
zooplus意大利:在线宠物商店
2019/08/07 全球购物
自学考试自我鉴定范文
2013/09/26 职场文书
英文感谢信范文
2015/01/21 职场文书
2015年安全员工作总结范文
2015/04/22 职场文书
2015婚礼主持词开场白
2015/05/28 职场文书
银行求职信范文
2019/05/13 职场文书
《童年》读后感(三篇)
2019/08/27 职场文书
Python下opencv使用hough变换检测直线与圆
2021/06/18 Python
Python爬虫中urllib3与urllib的区别是什么
2021/07/21 Python