天天看点

splice()方法 使用介绍

接下来的方法估计是数组中最强大的方法了,有很多种用法,

1.删除任意数量的项,只需要传入两个参数即可。要删除的第一项的位置和要删除的项数

     环境 先声明一个数组。

var str = [];
        str[0] = "red";
        str[1] = "yellow";
        str[2] = "black";
        str[3] = "lime";
        str[4] = "pink";
        str[5] = "gary";
           
var con = str.splice(1,1);      //删除第二项
console.log(str);   //["red", "black", "lime", "pink", "gary"]
console.log(con);   //["yellow"]
           

2.添加:可以向指定位置添加任意的项,只需要提供三个参数即可:起始位置,0(要删除的项数)和要添加的项。如果要添加多项可以继续在后面写参数用逗号分隔。

var con = str.splice(1,0,"orange","blue");      //从位置1开始推入1项
console.log(str);   // ["red", "orange", "blue", "black", "lime", "pink", "gary"]
console.log(con);   // []
           

3.替换(删除再添加):可以向指定位置添加任意的项,同时删除任意数量的项。需要指定三个参数:起始位置,删除的项数和要添加的项数,添加的项数不用和删除的项数保持一致。

var con = str.splice(1,2,"blue");      //删除第二项 然后在删除的位置上推入1项
        console.log(str);   // ["red", "blue", "black", "lime", "pink", "gary"]
        console.log(con);   // ["orange", "blue"]
           

4.不接收返回值也是可以的

str.splice(0,3,"red");
 console.log(str);   // ["red", "lime", "pink", "gary"]
           

总结:

1.splice()方法始终会返回一个数组,该数组中包含从原始数组中删除的项,如果没有删除任何项,那么将会返回一个空数组。

2.注意 该方法和slice()是不一样的,splice()会修改原数组中的项。

3.如果参数写的是负数那么把原本的数组输出出来,不做操作。

继续阅读