posts - 310, comments - 6939, trackbacks - 0, articles - 3
            BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

          JavaScript中的數(shù)字排序方法

          Posted on 2007-10-01 09:56 詩特林 閱讀(1919) 評論(0)  編輯  收藏 所屬分類: JavaScript
          JavaScript中的數(shù)字排序方法

          1.普通排序
          var a = [0,null,10,11,null,20,100,null,-10,-1,111,2null5];
           a.sort();
           console.log(a); 

           輸出結(jié)果:
          [-1-10010100111112205nullnullnullnull]

          2.一般排序
          function numberAsc(a, b) {     return a - b;}
            var a = [0,null,10,11,null,20,100,null,-10,-1,111,2null5];
                 a.sort(numberAsc);
                 console.log(
          "asc: ", a);

           輸出結(jié)果:
          asc: [-10-1nullnullnull0null25101120100111]

          3.高級排序
          function numberAsc(a, b) {    return a - b;}
                function numberDesc(a, b) {    return b - a;}
                var a = [0,null,10,11,null,20,100,null,-10,-1,111,2null5];
                a.sort(numberAsc);console.log(
          "asc: ", a);
                a.sort(numberDesc)console.log(
          "desc: ", a);
                a.sort(numberAsc);console.log(
          "asc: ", a);
                a.sort(numberDesc)console.log(
          "desc: ", a);

           輸出結(jié)果
          asc: [-10-1nullnullnull0null25101120100111]
              desc: [
          111100201110520nullnullnullnull-1-10]
              asc: [
          -10-1nullnullnullnull025101120100111]
              desc: [
          11110020111052nullnullnull0null-1-10]

          4.終極排序
          var ALMOST_ZERO = -0.00000001;
                 function numberAsc(a, b) {    
                         var left = a != null ? a : ALMOST_ZERO;    
                         var right = b != null ? b : ALMOST_ZERO;    
                         return left - right;
                }

           輸出結(jié)果
          asc: [-10-1nullnullnullnull025101120100111]
              desc: [
          111100201110520nullnullnullnull-1-10]
              asc: [
          -10-1nullnullnullnull025101120100111]
              desc: [
          111100201110520nullnullnullnull-1-10]
          主站蜘蛛池模板: 新乡县| 错那县| 呼和浩特市| 离岛区| 永胜县| 彰武县| 万宁市| 鄂托克前旗| 天柱县| 阿勒泰市| 永春县| 汤阴县| 通江县| 开江县| 桦川县| 邹城市| 九龙县| 来凤县| 大埔县| 南乐县| 双鸭山市| 丰镇市| 酒泉市| 四川省| 登封市| 新沂市| 称多县| 淅川县| 嘉定区| 稻城县| 侯马市| 南城县| 咸阳市| 南和县| 汝州市| 仁布县| 阿巴嘎旗| 勃利县| 丰城市| 龙口市| 宿州市|