您的位置:首页 > Web前端 > JavaScript

javascript中操作数组的内置函数

2015-05-25 10:00 393 查看
1.push和pop

           我们可以把数组看做成一个栈

           push表示压栈,给源数组的尾部追加元素,参数可以是一个或多个,返回值为数组的新长度;

           pop表示弹栈,从源数组的尾部剔除一个元素,返回值是剔除的元素;例子如下:

           var array1 = [1,2,3,4,5];

           var obj1 = array1.push(6,7);

           console.info(array1);//1,2,3,4,5,6,7

           console.info(obj1);//7

           var array2 = [5,4,3,2,1];

           var obj2 = array2.pop();

           console,info(array2);//5,4,3,2

           console,info(obj2);//1

2.shift和unshift

           shift表示从数组的头部剔除一个元素,返回值为剔除的元素;

           unshift表示数组的头部插入一个或者多个元素,返回值为数组的新长度;例子如下:

           var array1 = [1,2,3,4,5];

           var obj1 = array1.shift();

           console.info(array1);//2,3,4,5

           console.info(obj1);//4

           var array2 = [5,4,3,2,1];

           var obj2 = array2.unshift(6,7);

           console,info(array2);//6,7,5,4,3,2

           console,info(obj2);//7

3.splice和slice
         splice可以有多个参数,第一个参数为开始位置,第二个元素为截取的元素个数,其余参数为在截取的元素的位置插入这些元素

         slice 有两个参数,第一个参数表示起始位置,第二个参数表示截取的位置,(左闭右开),slice不操作数组本身,

          而是重新返回一个新的数组,数组元素为截取的元素,例子如下:

           var array1 = [1,2,3,4,5];

           var obj1 = array1.splice(1,2,3,4);

           console.info(array1);//1,3,4,4,5

           console.info(obj1);//4

           var array2 = [5,4,3,2,1];

           var obj2 = array2.slice(2,4);

           console,info(array2);//5,4,3,2,1

           console,info(obj2);//3,2

4.concat和join

         concat表示合并两个数组,但是它并不操作数组本身,而是返回一个组合的新数组

         join表示在每个数组元素之间加一个所传的参数,并不操作数组本身,而是返回一个新的拼接的数组元素字符串例子如下:

          var array1 = [1,2,3,4];

          var array2 = [4,5];

         var obj =  array1.concat(array2);

         console.info(array1);//1,2,3,4

         console.info(array2);//4,5

         console.info(obj);//12,3,4,4,5

        var obj2 = array1.join(':');

       console.info(array1);//1,2,3,4

       console.info(obj2);//1:2:3:4

5. sort和reverse

      sort表示排序数组(注意:排序的时候把元素当作字符串去排序,例如:5和10排序的时候,10在7的前面)

       reverse表示反转数组,例子如下:

       var array1 = [5,4,2,3,1,10];

       var array2 = [1,2,3,5,4];

      array1.sort();

      array2.reverse();

      console.info(array1);//1,10,2,3,4,5
      console.info(array2);//4,5,3,2,1

      注意:sort可以传入一个排序规则函数,如:

      function compare(v1,v2){

            if(v1 < v2){

             return -1;

           }else if(v1 > v2){

             return 1;

           }

      }

      var array3 = [5,4,2,3,1,10];

     array3.sort(compare);

     console.info(array3);//1,2,3,4,5,10
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: