javascript中操作数组的内置函数

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值