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的Ajax时无响应数据的解决方法
May 25 Javascript
Jquery常用技巧收集整理篇
Nov 14 Javascript
ASP.NET jQuery 实例8 (动态添加内容到DropDownList)
Feb 03 Javascript
JS实现匀速运动的代码实例
Nov 29 Javascript
js点击选择文本的方法
Feb 09 Javascript
JS &amp; JQuery 动态添加 select option
Jun 08 Javascript
vue.js系列中的vue-fontawesome使用
Feb 10 Javascript
vuejs router history 配置到iis的方法
Sep 20 Javascript
Koa日志中间件封装开发详解
Mar 09 Javascript
webpack项目使用eslint建立代码规范实现
May 16 Javascript
vue axios post发送复杂对象问题
Jun 04 Javascript
使用vue-router在Vue页面之间传递数据的方法
Jul 15 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
全国FM电台频率大全 - 3 河北省
2020/03/11 无线电
第4章 数据处理-php正则表达式-郑阿奇(续)
2011/07/04 PHP
php二分查找二种实现示例
2014/03/12 PHP
php实现获取及设置用户访问页面语言类
2014/09/24 PHP
PHP使用fopen与file_get_contents读取文件实例分享
2016/03/04 PHP
php与c 实现按行读取文件实例代码
2017/01/03 PHP
初学JavaScript第二章
2008/09/30 Javascript
JS 文件本身编码转换 图文教程
2009/10/12 Javascript
JS实现图片无间断滚动代码汇总
2014/07/30 Javascript
node.js中的fs.appendFileSync方法使用说明
2014/12/17 Javascript
使用Plupload实现直接上传附件至七牛云存储
2014/12/26 Javascript
IE下使用jQuery重置iframe地址时内存泄露问题解决办法
2015/02/05 Javascript
js获取url传值的方法
2015/12/18 Javascript
javascript中加var和不加var的区别 你真的懂吗
2016/01/06 Javascript
老生常谈Javascript中的原型和this指针
2016/10/09 Javascript
详解Node.js 命令行程序开发教程
2017/06/07 Javascript
vue实现图片上传预览功能
2019/12/23 Javascript
es6函数之尾递归用法实例分析
2020/04/25 Javascript
JavaScript基于用户照片姓名生成海报
2020/05/29 Javascript
搭建vscode+vue环境的详细教程
2020/08/31 Javascript
python实现的简单抽奖系统实例
2015/05/22 Python
Python列表list解析操作示例【整数操作、字符操作、矩阵操作】
2017/07/25 Python
详解python selenium 爬取网易云音乐歌单名
2019/03/28 Python
Python 通过微信控制实现app定位发送到个人服务器再转发微信服务器接收位置信息
2019/08/05 Python
Django后台管理系统的图文使用教学
2020/01/20 Python
Pycharm-community-2020.2.3 社区版安装教程图文详解
2020/12/08 Python
日本最大美瞳直送网:Morecontact(中文)
2019/04/03 全球购物
介绍一下.NET构架下remoting和webservice
2014/05/08 面试题
啤酒销售实习自我鉴定
2013/09/24 职场文书
采购部经理岗位职责
2014/02/10 职场文书
个人违纪检讨书
2014/09/15 职场文书
房屋转让协议书(标准范本)
2016/03/21 职场文书
工作建议书范文
2019/07/08 职场文书
MySQL数据库Innodb 引擎实现mvcc锁
2022/05/06 MySQL
Beekeeper Studio开源数据库管理工具比Navicat更炫酷
2022/06/21 数据库
Go本地测试解耦任务拆解及沟通详解Go本地测试的思路沟通的重要性总结
2022/06/21 Golang