posts - 17, comments - 4, trackbacks - 0, articles - 0
            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

          js sort 擴展

          Posted on 2007-10-09 12:03 愚人 閱讀(831) 評論(0)  編輯  收藏 所屬分類: Ajax/Javascript
          //一維數組的排序
          // type 參數
          // 0 字母順序(默認)
          // 1 大小 比較適合數字數組排序
          // 2 拼音 適合中文數組
          // 3 亂序 有些時候要故意打亂順序,呵呵
          // 4 帶搜索 str 為要搜索的字符串 匹配的元素排在前面
          function Array.prototype.SortBy(type,str)
          {
          switch (type)
          {
               case 0:this.sort(); break;
               case 1:this.sort(function(a,b){ return a-b; }); break;
               case 2:this.sort(function(a,b){ return a.localeCompare(b) }); break;
               case 3:this.sort(function(){ return Math.random()>0.5?-1:1; }); break;
               case 4:this.sort(function(a,b){ return a.indexOf(str)==-1?1:-1; }); break;
               default:this.sort();
              }
          }






          隨機數組
          <script>
          var ars=['金','木','水','火','土','仁','義','禮','志','賢'];
          for(var i=ars.length-1;i>0;i--)
          ars.push(ars.splice(Math.round(Math.random()*i), 1))
          alert(ars)
          </script>




          <script>
          //隨機重排數組,by kill,20:39 03-4-14

          //產生隨機數:
          rnd.today=new Date();
          rnd.seed=rnd.today.getTime();
          function rnd()
          {
            rnd.seed = (rnd.seed*9301+49297) % 233280;
            return rnd.seed/(233280.0);
          }
            function rand(number) {return Math.ceil(rnd()*number);}

          //原數組
          var arr = new Array("1","2","3","4","5","6","7","8","9","10");

          out_put(arr);
          document.write("<hr width=180 align=left><input type='button' onclick='location.reload()' value='      refresh      '></input><br><br>");

          //隨機重排數組后輸出:
          for(var i=0;i<10;i++)
          {
           arr_rand(arr);
           out_put(arr);
          }

          //數組輸出函數
          function out_put(arr)
          {
           for(var i=0;i<arr.length;i++)
            document.write(" "+arr[i]);
           document.write("<br>");
          }

          //數組重組函數,將每個元素與一隨機元素換位:
          function arr_rand(arr)
          {
           for(var i=0;i<arr.length;i++)
           {
            var tem,ranarr=rand(arr.length-1);
            tem=arr[i];
            arr[i]=arr[ranarr];
            arr[ranarr]=tem;
           }
          }

          </script>










          <style>*{font-size:35px;font-weight:bolder;letter-spacing:10px;overflow:hidden;text-decoration:underline}</style>
          <script>
          var ars,str='';ars=['金','木','水','火','土','仁','義','禮','志','賢'];
          for(j=0;j<10;j++){for(i=0;i<10;i++){str+=ars[Math.round(10*Math.random())];if(/(.).*\1/ig.test(str))str=str.substring(0,i--)}document.write(str+'
          ');}
          </script>





          <script>
          ars=['金','木','水','火','土','仁','義','禮','志','賢']
          for (var i=0; i<10; i++)
          document.write(ars.sort(function(){return Math.random( )*new Date%3-1})+"<br />")
          </script>

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


          網站導航:
           
          主站蜘蛛池模板: 凌云县| 巴彦淖尔市| 泰安市| 菏泽市| 延吉市| 沙河市| 新乡市| 芜湖市| 鸡泽县| 奉贤区| 诸暨市| 张家口市| 洛南县| 四川省| 河津市| 大化| 泰顺县| 山丹县| 青田县| 杨浦区| 德格县| 尚志市| 南澳县| 勐海县| 潞城市| 龙泉市| 大邑县| 湟中县| 桦川县| 修水县| 宣化县| 海林市| 瑞昌市| 丰城市| 乳山市| 绥化市| 沭阳县| 恭城| 宜州市| 甘南县| 天祝|