定义和用法
splice() 方法向/从数组中添加/删除项目,然后返回被删除的项目。
注释:该方法会改变原始数组。
语法
arrayobject.splice(index,howmany,item1,.....,itemx)
参数 描述
index 必需。整数,规定添加/删除项目的位置,使用负数可从数组结尾处规定位置。
howmany 必需。要删除的项目数量。如果设置为 0,则不会删除项目。
item1, ..., itemx 可选。向数组添加的新项目。
返回值
类型 描述
array 包含被删除项目的新数组,如果有的话
说明
splice() 方法可删除从 index 处开始的零个或多个元素,并且用参数列表中声明的一个或多个值来替换那些被删除的元素。
如果从 arrayobject 中删除了元素,则返回的是含有被删除的元素的数组。
技术细节
javascript 版本: 1.2
浏览器支持
所有主流浏览器都支持 splice() 方法。
提示和注释
注释:请注意,splice() 方法与 slice() 方法的作用是不同的,splice() 方法会直接对数组进行修改。
实例
例子 1
在本例中,我们将创建一个新数组,并向其添加一个元素:
<script type="text/javascript">
var arr = new array(6)
arr[0] = "george"
arr[1] = "john"
arr[2] = "thomas"
arr[3] = "james"
arr[4] = "adrew"
arr[5] = "martin"
document.write(arr + "<br />")arr.splice(2,0,"william")document.write(arr + "<br />")
</script>
输出
george,john,thomas,james,adrew,martin
george,john,william,thomas,james,adrew,martin
例子 2
在本例中我们将删除位于 index 2 的元素,并添加一个新元素来替代被删除的元素:
<script type="text/javascript">
var arr = new array(6)
arr[0] = "george"
arr[1] = "john"
arr[2] = "thomas"
arr[3] = "james"
arr[4] = "adrew"
arr[5] = "martin"
document.write(arr + "<br />")arr.splice(2,1,"william")document.write(arr)
</script>
输出:
george,john,thomas,james,adrew,martin
george,john,william,james,adrew,martin
例子 3
在本例中我们将删除从 index 2 ("thomas") 开始的三个元素,并添加一个新元素 ("william") 来替代被删除的元素:
<script type="text/javascript">
var arr = new array(6)
arr[0] = "george"
arr[1] = "john"
arr[2] = "thomas"
arr[3] = "james"
arr[4] = "adrew"
arr[5] = "martin"
document.write(arr + "<br />")arr.splice(2,3,"william")document.write(arr)
</script>
输出:
george,john,thomas,james,adrew,martin
george,john,william,martin
javascript中的splice主要用来对js中的数组进行操作,包括删除,添加,替换等。
注意:这种方法会改变原始数组!。
1.删除-用于删除元素,两个参数,第一个参数(要删除第一项的位置),第二个参数(要删除的项数)
2.插入-向数组指定位置插入任意项元素。三个参数,第一个参数(插入位置),第二个参数(0),第三个参数(插入的项)
3.替换-向数组指定位置插入任意项元素,同时删除任意数量的项,三个参数。第一个参数(起始位置),第二个参数(删除的项数),第三个参数(插入任意数量的项)
示例:
1、删除功能,第一个参数为第一项位置,第二个参数为要删除几个。
array.splice(index,num),返回值为删除内容,array为结果值。
<!doctype html>
<html>
<body>
<script>
var array = ['a','b','c','d'];
var removearray = array.splice(0,2);
alert(array);//弹出c,d
alert(removearray);//返回值为删除项,即弹出a,b
</script>
</body>
</html>
2、插入功能,第一个参数(插入位置),第二个参数(0),第三个参数(插入的项)
array.splice(index,0,insertvalue),返回值为空数组,array值为最终结果值
!doctype html>
<html>
<body>
<script>
var array = ['a','b','c','d'];
var removearray = array.splice(1,0,'insert');
alert(array);//弹出a,insert,b,c,d
alert(removearray);//弹出空
</script>
</body>
</html>
3、替换功能,第一个参数(起始位置),第二个参数(删除的项数),第三个参数(插入任意数量的项)
array.splice(index,num,insertvalue),返回值为删除内容,array为结果值。
<!doctype html>
<html>
<body>
<script>
var array = ['a','b','c','d'];
var removearray = array.splice(1,1,'insert');
alert(array);//弹出a,insert,c,d
alert(removearray);//弹出b
</script>
</body>
</html>
以上就是javascript删除元素并向数组添加新元素的方法splice()的详细内容。