js对数组对象进行排序sort(降序),reverse(翻转)

将数据对象进行排序(根据某个属性)

	var data = [{'id':'1','name':'name1','num':'15'},
            {'id':'2','name':'name2','num':'118'},
            {'id':'3','name':'name3','num':'32'},
            {'id':'4','name':'name4','num':'65'}];
            function px(key){
                return function(value1,value2){
                // 对属性的访问,obj["key"]与obj.key都是可以的,不过,如果key值并不确定,而是一个变量的时候,则只能通过obj[key]的方式访问。
                    var val1 = value1[key];//这块用.key数组没有发生变化
                    var val2 = value2[key];
                    return val1-val2;
                }
            }
            data.sort(px('num'))//升序  //对num的值进行排序
            console.log(data);
            data.reverse()//将数组翻转,就成为降序
            //降序的另一种方式是将px()方法中的return val1-val2;换成return val2-val1;
            console.log(data);//[{'id':'2','name':'name2','num':'118'},
		           // {'id':'4','name':'name4','num':'65'},
		           // {'id':'3','name':'name3','num':'32'},
		           // {'id':'1','name':'name1','num':'15'}]

版权声明:本文为qq_44235822原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。