隨筆 - 175  文章 - 202  trackbacks - 0
          <2010年3月>
          28123456
          78910111213
          14151617181920
          21222324252627
          28293031123
          45678910

          第一個Blog,記錄哈哈的生活

          常用鏈接

          留言簿(16)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          收藏夾

          Java links

          搜索

          •  

          最新評論

          閱讀排行榜

          評論排行榜

          首先,對一個 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 哈哈的日子 閱讀(626) 評論(1)  編輯  收藏

          FeedBack:
          # re: js Array.sort 遇到的問題 2012-03-29 22:57 gecko
          解決方法:
          var flag = x1 - y1;
          if(flag > 0) {
          return 1;
          } else if(flag < 0) {
          return -1;
          } else {
          return 0;
          }
          推測是與回調函數返回值關聯起來  回復  更多評論
            

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 怀宁县| 云霄县| 中西区| 治县。| 阳新县| 静海县| 雅江县| 司法| 通山县| 永平县| 射阳县| 黄石市| 合山市| 大理市| 昭通市| 林芝县| 崇左市| 恩平市| 郎溪县| 克什克腾旗| 三门峡市| 轮台县| 甘南县| 榆社县| 芮城县| 梁平县| 巴彦县| 碌曲县| 廉江市| 沿河| 普宁市| 兴隆县| 荆州市| 萨嘎县| 如皋市| 谷城县| 衡东县| 会宁县| 文安县| 阿荣旗| 锡林浩特市|