js中对象的自定义排序
程序员文章站
2022-04-12 19:50:40
原始js中的排序不能满足: arr.sort(sortNumber);arr.sort(function (a, b) { return b.name < a.name;}); 商城列表-积分由高到低由低到高排列: html: 参考:http://www.jb51.net/article/67458 ......
1 //并返回一个可以用来对包含该成员的对象数组进行排序的比较函数 2 var compareAsc = function (prop) { 3 return function (obj1, obj2) { 4 var val1 = obj1[prop]; 5 var val2 = obj2[prop]; 6 if (!isNaN(Number(val1)) && !isNaN(Number(val2))) { 7 val1 = Number(val1); 8 val2 = Number(val2); 9 } 10 if (val1 < val2) { 11 return -1; 12 } else if (val1 > val2) { 13 return 1; 14 } else { 15 return 0; 16 } 17 } 18 } 19 var compareDesc = function (prop) { 20 return function (obj1, obj2) { 21 var val1 = obj1[prop]; 22 var val2 = obj2[prop]; 23 if (!isNaN(Number(val1)) && !isNaN(Number(val2))) { 24 val1 = Number(val1); 25 val2 = Number(val2); 26 } 27 if (val1 > val2) { 28 return -1; 29 } else if (val1 < val2) { 30 return 1; 31 } else { 32 return 0; 33 } 34 } 35 }
原始js中的排序不能满足:
arr.sort(sortNumber);
arr.sort(function (a, b) {
return b.name < a.name;
});
商城列表-积分由高到低由低到高排列:
1 $scope.up=true; 2 $scope.down = false; 3 $scope.upDown = function(i) { 4 $scope.up=!$scope.up; 5 $scope.down=!$scope.down 6 if($scope.up == true && $scope.down == false){ 7 intData.sort(compareAsc("price")); 8 }else if($scope.up == false && $scope.down == true){ 9 intData.sort(compareDesc("price")); 10 } 11 };
html:
<a class="col col-50" ng-click="upDown()">{{'jifen.sortUp' | i18next}} <i ng-class="{'ion-ios-arrow-thin-up':up,'ion-ios-arrow-thin-down':down }" class="icon "></i></a>
参考:http://www.jb51.net/article/67458.htm
上一篇: 四成英国厢式车驾驶员不熟悉车联网
下一篇: 维修费用高昂将成车联网普及阻碍
推荐阅读
-
利用JS实现页面删除并重新排序的功能
-
PHP中的排序函数sort、asort、rsort、krsort、ksort区别分析_PHP
-
C#实现用户自定义控件中嵌入自己的图标
-
WordPress中设置Post Type自定义文章类型的实例教程,wordpress实例教程
-
Java中传递和返回对象的实例代码
-
浅谈 js创建对象的 8 种模式
-
JS获取对象的某个CSS属性值的问题_html/css_WEB-ITnose
-
js查找某元素中的所有图片地址的方法_jquery
-
Yii2的相关学习记录,自定义gii模板和引用vendor中的js、css(四) - 漫游云巅
-
在HTML中利用js调用php的内容-计数器实例_PHP教程