js封装数组方法

1、使用 js 封装一个冒泡排序的方法

 1  <script>
 2           function bubbleSort(arr){
 3               for(var i = 1 ; i < arr.length ; i++){
 4                   for(var j = 0 ; j < arr.length - i ; j ++) {
 5                       if(arr[j] > arr[j + 1]){
 6                           var t = arr[j] ; 
 7                           arr[j] = arr[j + 1] ;
 8                           arr[j + 1] = t ;
 9                       }
10                   }
11               }
12               return arr ;
13           }
14           var arr = [9,4,0,8,3,2,7,1,6,5] ;
15           console.log(bubbleSort(arr)) ;
16 </script>

  执行结果:


2、封装一个去除数组中重复元素的方法

 1 <script>
 2          function reuse(arr){
 3              var temp = new Array() ;
 4              for(var i in arr){
 5                  if(temp.indexOf(arr[i]) == -1) {
 6                      temp.push(arr[i]) ;
 7                  }
 8              }
 9              return temp ;
10          }
11          var arr = [1,1,2,3,4,5,6,6,7,8,8,8,9] ;
12          console.log(reuse(arr)) ;
13 </script>

  执行结果:

3、封装一个将数组中的元素拼接为字符串的方法,并且弹框输出

 1 <script>
 2          function reuse(arr){
 3              var str = '' ;
 4              for(var i = 0 ; i < arr.length ; i++){
 5                  str+=arr[i] ;
 6              }
 7              return str  ;
 8          }
 9          var arr = ['你好','javaScript'] ;
10          alert(typeof reuse(arr)) ;
11 </script>

4、封装一个 myQueryString 的方法,作用是将 url 中的参数解析为一个对象

 1 <script>
 2          function myQueryString (url){
 3              var str = url.split('?')[1] ;
 4              var result = {} ;
 5              var temp = str.split('&') ;
 6              for(var i = 0 ; i < temp.length ; i++){
 7                  var temp2 = temp[i].split('=') ;
 8                  result[temp2[0]] = temp2[1] ;
 9              }
10              return result ;
11          }
12 
13          var url = 'http://www.taobao.com/index.php?key0=0&key1=1&key2=2' ;
14          console.log(myQueryString(url)) ;
15 </script>

  执行结果:

posted @ 2021-03-01 13:38  gaobz  阅读(510)  评论(0)    收藏  举报