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 相关文章推荐
对YUI扩展的Gird组件 Part-1
Mar 10 Javascript
IE8 兼容性问题(属性名区分大小写)
Jun 04 Javascript
jQuery代码优化之基本事件
Nov 01 Javascript
javascript中关于break,continue的特殊用法与介绍
May 24 Javascript
js计算字符串长度包含的中文是utf8格式
Oct 15 Javascript
多选列表框动态添加,移动,删除,全选等操作的简单实例
Jan 13 Javascript
实用jquery操作表单元素的简单代码
Jul 04 Javascript
jQuery包裹节点用法完整示例
Sep 13 Javascript
BootStrap Table复选框默认选中功能的实现代码(从数据库获取到对应的状态进行判断是否为选中状态)
Jul 11 Javascript
ajax请求+vue.js渲染+页面加载的示例
Feb 11 Javascript
纯 JS 实现放大缩小拖拽功能(完整代码)
Nov 25 Javascript
vue父子模板传值问题解决方法案例分析
Feb 26 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 Smarty生成EXCEL文档的代码
2008/08/23 PHP
php实现httpRequest的方法
2015/03/13 PHP
php实现TCP端口检测的方法
2015/04/01 PHP
Yii框架中jquery表单验证插件用法示例
2016/10/18 PHP
thinkphp修改配置进入默认首页的方法
2017/02/07 PHP
PHP实现使用DOM将XML数据存入数组的方法示例
2017/09/27 PHP
IE之动态添加DOM节点触发window.resize事件
2010/07/27 Javascript
JavaScript基础语法让人疑惑的地方小结
2012/05/23 Javascript
JQuery切换显示的效果实例代码
2013/02/27 Javascript
jquery实现table鼠标经过变色代码
2013/09/25 Javascript
js形成页面的一种遮罩效果实例代码
2014/01/04 Javascript
JavaScript学习笔记之JS事件对象
2015/01/22 Javascript
JavaScript获取网页表单action属性的方法
2015/04/02 Javascript
基于jQuery.Hz2Py.js插件实现的汉字转拼音特效
2015/05/07 Javascript
canvas绘图不清晰的解决方案
2017/02/28 Javascript
ECMAScript6--解构
2017/03/30 Javascript
Javascript别踩白块儿(钢琴块儿)小游戏实现代码
2017/07/20 Javascript
JavaScript实现一个简易的计算器实例代码
2018/05/10 Javascript
javascript将非数值转换为数值
2018/09/13 Javascript
Vue.js子组件向父组件通信的方法实例代码详解
2018/12/10 Javascript
JavaScript中AOP的实现与应用
2019/05/06 Javascript
MockJs结合json-server模拟后台数据
2020/08/26 Javascript
vue实现表格过滤功能
2019/09/27 Javascript
解决layui laydate 时间控件一闪而过的问题
2019/09/28 Javascript
微信小程序 this.triggerEvent()的具体使用
2019/12/10 Javascript
vue-cli+webpack项目打包到服务器后,ttf字体找不到的解决操作
2020/08/28 Javascript
使用python批量读取word文档并整理关键信息到excel表格的实例
2018/11/07 Python
在django中实现页面倒数几秒后自动跳转的例子
2019/08/16 Python
python实现粒子群算法
2020/10/15 Python
CSS3 border-image详解、应用及jQuery插件
2011/08/29 HTML / CSS
Linux如何为某个操作添加别名
2013/03/01 面试题
煤矿班组长岗位职责
2013/12/29 职场文书
全神贯注教学反思
2014/02/03 职场文书
学习保证书范文
2014/04/30 职场文书
2014年党风建设工作总结
2014/11/19 职场文书
2014个人年度工作总结范文
2014/12/24 职场文书