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 相关文章推荐
jquery tools系列 expose 学习
Sep 06 Javascript
利用jquery.qrcode在页面上生成二维码且支持中文
Feb 12 Javascript
js如何实现淡入淡出效果
Nov 18 Javascript
js获取浏览器高度 窗口高度 元素尺寸 偏移属性的方法
Nov 21 Javascript
js,jq,css多方面实现简易下拉菜单功能
May 13 Javascript
javascript回调函数详解
Feb 06 Javascript
Vue表单demo v-model双向绑定问题
Jun 29 Javascript
vue-cli 3.x 修改dist路径的方法
Sep 19 Javascript
优雅的elementUI table单元格可编辑实现方法详解
Dec 23 Javascript
bootstrap-closable-tab可实现关闭的tab标签页插件
Aug 09 Javascript
Electron+vue从零开始打造一个本地播放器的方法示例
Oct 27 Javascript
vue watch监控对象的简单方法示例
Jan 07 Vue.js
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(3)
2006/10/09 PHP
使用php统计字符串中中英文字符的个数
2013/06/23 PHP
php将textarea数据提交到mysql出现很多空格的解决方法
2014/12/19 PHP
两种php实现图片上传的方法
2016/01/22 PHP
Laravel框架搜索分页功能示例
2019/02/01 PHP
Vuejs 页面的区域化与组件封装的实现
2017/09/11 Javascript
vue实现的双向数据绑定操作示例
2018/12/04 Javascript
JavaScript对象的特性与实践应用深入详解
2018/12/30 Javascript
vue cli3.0结合echarts3.0与地图的使用方法示例
2019/03/26 Javascript
微信小程序 生成携带参数的二维码
2019/10/23 Javascript
Javascript 类型转换、封闭函数及常见内置对象操作示例
2019/11/15 Javascript
vue 使用 canvas 实现手写电子签名
2020/03/06 Javascript
jquery实现两个div中的元素相互拖动的方法分析
2020/04/05 jQuery
基于js判断浏览器是否支持webGL
2020/04/18 Javascript
ES6扩展运算符和rest运算符用法实例分析
2020/05/23 Javascript
python读写文件操作示例程序
2013/12/02 Python
Python中的字典遍历备忘
2015/01/17 Python
Python3实现将文件树中所有文件和子目录归档到tar压缩文件的方法
2015/05/22 Python
学习Python3 Dlib19.7进行人脸面部识别
2018/01/24 Python
详解python字节码
2018/02/07 Python
python 根据字典的键值进行排序的方法
2019/07/24 Python
Python爬虫:url中带字典列表参数的编码转换方法
2019/08/21 Python
Python time库基本使用方法分析
2019/12/13 Python
Python Dict找出value大于某值或key大于某值的所有项方式
2020/06/05 Python
HTML5 CSS3打造相册效果附源码下载
2014/06/16 HTML / CSS
番木瓜健康和保健产品第一大制造商:Herbal Papaya
2017/04/25 全球购物
自我鉴定200字
2013/10/28 职场文书
大学生毕业自我鉴定范文
2013/11/03 职场文书
机关财务管理制度
2014/01/17 职场文书
教师岗位聘任书范文
2014/03/29 职场文书
总经理人事任命书
2014/06/05 职场文书
优秀小学生事迹材料
2014/12/26 职场文书
2016高中社会实践心得体会范文
2016/01/14 职场文书
2016年第二十五次全国助残日活动总结
2016/04/01 职场文书
win10安装配置nginx的过程
2021/03/31 Servers
python基于scrapy爬取京东笔记本电脑数据并进行简单处理和分析
2021/04/14 Python