javascript splice()方法可以用于删除指定数量的元素、替换指定元素以及在指定位置添加元素,使用语法“array.splice(index,count,item1,…..,itemX)”。
本教程操作环境:windows7系统、javascript1.8.5版、Dell G3电脑。
javascript splice方法
在javascript中,splice() 方法用于添加或删除数组中的元素。
语法:
array.splice(index,count,item1,.....,itemX)
参数 | 描述 |
---|---|
index | 必需。规定从何处添加/删除元素。 该参数是开始插入和(或)删除的数组元素的下标,必须是数字。 |
coun | 可选。规定应该删除多少元素。必须是数字,但可以是 "0"。 如果未规定此参数,则删除从 index 开始到原数组结尾的所有元素。 |
item1, …, itemX | 可选。要添加到数组的新元素 |
splice() 方法功能比较强,它可以实现删除指定数量的元素、替换指定元素以及在指定位置添加元素。这些不同功能的实现需要结合方法参数来确定:
-
当参数只有 index 和 count 两个参数时,如果 count 不等于 0,splice() 方法实现删除功能,同时返回所删除的元素:从 index参数指定位置开始删除 count 参数指定个数的元素;
-
当参数为 3 个以上,且 count 参数不为0时,splice() 方法实现替换功能,同时返回所替换的元素:用第三个及其之后的参数替换 index 参数指定位置开始的 count 参数指定个数的元素;
-
当参数为 3 个以上,且 count 参数为 0 时,splice() 方法的实现添加功能:用第三个及其之后的参数添加到 index 参数指定位置上。
返回值:数组类型;如果从 array 中删除了元素,则返回的是含有被删除的元素的数组。
splice() 方法实现的各个功能示例如下:
① 使用 splice() 从指定位置删除指定个数的元素:
var arr = ['A','B','C','D']; //2个参数,第二个参数不为 0,实现删除功能 alert(arr.splice(0,2)); alert(arr); //返回C,D
② 使用 splice() 用指定元素替换从指定位置开始的指定个数的元素:
var arr = ['A','B','C','D']; //3个参数,第二个参数不为 0,实现替换功能:用 a 替换掉 A,返回:A alert(arr.splice(0,1,'a')); alert(arr); //返回:a,B,C,D alert(arr.splice(0,2,'a or b'));//用a or b替换掉a和B,返回a,B alert(arr); //返回:a or b,C,D
③ 使用 splice() 在指定位置添加指定的元素:
var arr = ['A','B','C','D']; //4个参数,第二个参数为 0,实现添加功能:在下标为 1 处添加 aaa,bbb,没有返回值 alert(arr.splice(1,0,'aaa','bbb')); alert(arr);//返回:A,aaa,bbb,B,C,D
示例:使用 splice() 方法实现数组去重。
<!doctype html> <html> <head> <meta charset="utf-8"> <title>使用splice方法实现数组去重</title> <script> var arr = [1,2,2,2,4,2]; for(var i = 0; i < arr.length; i++){ for(var j = i + 1; j < arr.length; j++){ if(arr[i] == arr[j]){ arr.splice(j,1);//删除 j 位置处的元素 j--; } } } alert(arr);//返回1,2,4三个元素 </script> </head> <body> </body> </html>
上述代码使用了具有两个参数的 splice(),实现了删除指定元素的功能。
【