JS基础_数组的方法

常用的方法

  1.push:向数组的末尾添加一个或更多元素,并返回新的长度。

        将要添加的元素作为方法的参数传递,这些元素将会自动添加到数组的末尾

var a=[1,2,3];
var r = a.push("1","2");
console.log(a,r);//[1,2,3,1,2] 5

  

  2.pop:删除并返回数组的最后一个元素,并将被删除的元素返回。

var a=[1,2,3];
var r = a.pop();
console.log(a,r);[1,2] 3

  3.unshift():向数组的开头添加一个或更多元素,并返回新的长度

  4.shift():删除并返回数组的第一个元素,并将被删除的元素返回

  5.slice:从某个已有的数组返回选定的元素

    - 该方法不会改变元素数组,而是将截取到的元素封装到一个新数组中返回

    - 参数:

      1.截取开始的位置的索引,包含开始索引

      2.截取结束的位置的索引,不包含结束索引

         - 第二个参数可以省略不写,此时会截取从开始索引往后的所有元素

         - 索引可以传递一个负值

            从后往前计算

var arr = [1,2,3,4,5];
var r = arr.slice(1,3);
console.log(arr,r);//[1,2,3,4,5]  [2,3]

  

  6.splice:删除元素,并向数组添加新元素。

    - 可以用于删除数组中的指定元素

    - 会影响到原数组,会将指定的元素从原数组中删除,并将被删除的元素作为返回值返回

    - 参数:

      第一个,表示删除的索引

      第二个,表示删除的数量

      第三个及以后的参数,

         传递一些新的元素,这些元素将会自动插入到开始位置索引前面(既替换)

            var arr = [1,2,3,4,5];
            var r = arr.splice(1,3);
            console.log(arr,r);//[1,5]  [2,3,4]

  7.concat:用于连接两个或多个数组。该方法不会改变现有的数组,而仅仅会返回被连接数组的一个副本

      a.不会对原数组产生影响

            var arr = [1,2];
            var arr2=[6,7];
       var arr3=[4,5];
       var r1=arr.concat(arr2,arr3,6,7);
var r=arr.concat(arr2); console.log(r);//[1,2,6,7]

  8.join:将数组转换为一个字符串

      a.该方法不会对原数组产生影响

      b.可以制定一个字符串作为参数,用来作为数组中元素的连接符

        (1).如果不指定连接符,则默认使用,连接

  9.reverse:反转数组,会改变原数组

            var arr = [1,2];
            arr.reverse()
            console.log(arr);//[2,1]        

  10.sort():对数组中的元素进行排序

    a.会影响原数组,默认按照unicode编码进行排序

    b.可以指定排序的规则

      在sort()添加一个回调函数,来指定排序规则,回调函数中需定义两个形参,浏览器会分别使用数组中的元素作为实参去调用回调函数

      浏览器会根据回调函数的返回值来决定元素的顺序

        (1).如果返回一个大于0的值,则元素会交换位置

        (2).如果返回一个小于0的值,则元素位置不变

        (3).如果返回一个0,则认为连个元素相等,也不交换位置

            var arr = [1,2,7,5,6,4,8,9];
            arr.sort((a,b)=>a-b)
            console.log(arr);//[1, 2, 4, 5, 6, 7, 8, 9]
            arr.sort((a,b)=>b-a)
            console.log(arr);//[9, 8, 7, 6, 5, 4, 2, 1]

  

      

 

posted @ 2018-09-21 14:40  大雄是个好青年  阅读(140)  评论(0编辑  收藏  举报