首先,对一个 array 进行排序,但得到的结果与想象的不一样,是 2010-1-13, 2010-1-22, 2010-1-15
var sortArray=[
{title:"aaa", date:"2010-1-22"},
{title:"trtttt", date:"2010-1-15"},
{title:"erere", date:"2010-1-13"}
];
sortArray.sort(function(x,y){
var x1=new Date(x.date.replace("-","/"));
var y1=new Date(y.date.replace("-","/"));
//alert("x1=" + (x1.getMonth()+1)+"/"+x1.getDate() + ", y1 = " + (y1.getMonth()+1)+"/"+y1.getDate() + ", x1 > y1 = " + (x1 - y1));
return x1>y1;
});
for(var i=0;i<sortArray.length;i++) {
var x1=new Date(sortArray[i].date.replace("-","/"));
alert(x1.getYear() + "-" + (x1.getMonth() + 1) + "-" + x1.getDate() + " , " + sortArray[i].date + " | " + sortArray[i].title);
}
要把标红的部分改成
return x1-y1;
看来,js 排序的时候为了内部优化,排序和 sort 的 function 结果有关。
posted on 2010-03-22 14:01
哈哈的日子 阅读(621)
评论(1) 编辑 收藏