var
myarray
=
new
Array
(
8
,
6
,
7
,
9
,
1
,-
1
,
4
);
myarray
.
sort
();
输出myarray是:-1,1,4,6,7,8,9
原理模拟:
<script type="text/javascript"> <!-- var myarray = new Array(8,6,7,9,1,-1,4); var myarray1 = new Array(8,6,7,9,1,-1,4); var sortAsc = function(x,y) { return x-y; }; var sortDesc = function(x,y) { return y-x; }; Array.prototype.st=function(fn){ var t; fn=fn||function(x,y){return x-y}; for(var i=0;i<this.length;i++){ for(var j=i;j<this.length;j++){ if(fn(this[i],this[j])>0){ t=this[i]; this[i]=this[j]; this[j]=t; } } } } myarray.st(); alert("默认升序排列:"+myarray); myarray.st(sortDesc); alert("降序排列:"+myarray); myarray.st(sortAsc); alert("升序排列:"+myarray); myarray1.sort(function(){return 1}); //注:js默认的sort对此排序结果跟这个不一样,其排序方式还暂不理解 alert("逆序排列:"+myarray1); //--> </script>
function doOrderList(){ var ulList = $("ul[order-time]"); ulList.sort(function(a,b){ var $a = $(a),$b = $(b); var atime = $a.attr('order-time') ,btime = $b.attr('order-time'); if(atime>btime) return -1; if(atime<btime) return 1; return 0; }); $('#todo_hidden').empty().append(ulList); if(ulList.length < 1){ bizWidget.html(""); var wcontain = bizWidget.parents(".w-cnt-contain"); wcontain.slideUp(500); var target = wcontain.siblings(".w-title:first").find(".desc-arrow"); target.addClass("arrowDown"); } else if(ulList.length<=4){ bizWidget.append(ulList); } else { bizWidget.append($("ul[order-time]:lt(4)")); } $(".count-to-do").empty().append("");