js数组对象排序
来源:互联网 发布:ubuntu 设置dns 编辑:程序博客网 时间:2024/06/05 12:38
<!DOCTYPE html><html><head> <title></title> <script src="http://libs.baidu.com/jquery/1.9.0/jquery.js"></script></head><body> <script> //方法一 /** * 比较数组对象大小 * @param prop 对比数组对象的key * @param orderby 排序方式 asc升序,desc降序 * @returns {Function} */ function compare(prop,orderby) { return function (obj1, obj2) { var val1 = obj1[prop]; var val2 = obj2[prop]; if(orderby=='desc'){ if (val1 > val2) { return -1; } else if (val1 < val2) { return 1; } else { return 0; } }else{ if (val1 < val2) { return -1; } else if (val1 > val2) { return 1; } else { return 0; } } } } /** * 对数组对象进行排序 * @param arr 传入数组 * @param prop 对比数组对象的key * @param orderby 排序方式 asc升序,desc降序 * @returns {*} */ function arrObjSort(arr,prop,orderby){ return arr.sort(compare(prop,orderby)); } var arr = [{name: "zlw", age: 24}, {name: "wlz", age: 25}]; console.log(arrObjSort(arr,'age','asc')); //方法二var arr=[{num: 3, age: 24}, {num: 55, age: 25}]var times=0;var bubbleSort=function(arr){ for(var i=0;i<arr.length-1;i++){ for(var j=i+1;j<arr.length;j++){ if(arr[i].age>arr[j].age){//如果前面的数据比后面的大就交换 var temp=arr[i].age; arr[i].age=arr[j].age; arr[j].age=temp; } } } return arr;}var bubbleSort1=function(arr){ for(var i=0;i<arr.length-1;i++){ for(var j=i+1;j<arr.length;j++){ if(arr[i].num>arr[j].num){//如果前面的数据比后面的大就交换 var temp=arr[i].num; arr[i].num=arr[j].num; arr[j].num=temp; } } } return arr;}console.log(bubbleSort(arr));console.log(bubbleSort1(bubbleSort(arr))); </script></body></html>
阅读全文
0 0
- js数组对象排序
- js 数组对象 排序
- js 对象数组的排序
- js中的数组对象排序
- js中的数组对象排序
- JS对象字符串数组排序
- js中的数组对象排序
- js 数组对象根据某一属性排序
- JS中给数组对象排序
- js通用对象数组冒牌排序
- js通用对象数组冒牌排序
- JS中给数组对象排序
- JS中给数组对象排序
- js对象数组根据对象object key的值排序
- js根据数组对象中某属性进行排序
- js使用sort()对数组对象排序的方法
- js对数组中对象字段的排序
- java对象数组排序
- Informatica中利用ODBC连接Oracle、Sybase的配置方法
- HDU1022--Train Problem I(栈)
- CentOS7.3 安装Docker
- 跨域单点登录实现
- wm_concat
- js数组对象排序
- Canvas 简介及适配
- wget命令部分参数使用一般方法
- Chrome浏览器的黑屏如何解决
- 三级缓存之AsyncTask学习
- 旅游市场调查:亚太地区游客需求调查报告
- 腾讯手游如何提早揭露游戏外挂风险?
- Linux Centos 7安装在VirtualBox虚拟机上的网络配置
- sql注入逻辑分析