首頁  >  文章  >  web前端  >  JavaScript刪除元素並在陣列中新增元素的方法splice()

JavaScript刪除元素並在陣列中新增元素的方法splice()

黄舟
黄舟原創
2017-11-03 14:02:162386瀏覽

定義和用法

splice() 方法向/從陣列新增/刪除項目,然後傳回被刪除的項目。

註解:此方法會改變原始陣列。

語法

arrayObject.splice(index,howmany,item1,.....,itemX)
##index#必需。 howmany必要。要刪除的項目數量。如果設定為 0,則不會刪除項目。 item1, ..., itemX可選。向數組新增的新項目。
參數 #描述
整數,規定新增/刪除項目的位置,使用負數可從陣列結尾規定位置。
傳回值

#類型描述Array包含被刪除項目的新數組,如果有的話
說明

splice() 方法可刪除從index 處開始的零個或多個元素,並且用參數清單中宣告的一個或多個值來取代那些刪除的元素。

如果從 arrayObject 中刪除了元素,則傳回的是含有已刪除的元素的陣列。

技術細節

1.2
JavaScript 版本:
##################### #

浏览器支持

所有主流浏览器都支持 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 = [&#39;a&#39;,&#39;b&#39;,&#39;c&#39;,&#39;d&#39;]; 
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 = [&#39;a&#39;,&#39;b&#39;,&#39;c&#39;,&#39;d&#39;]; 
var removeArray = array.splice(1,0,&#39;insert&#39;); 
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 = [&#39;a&#39;,&#39;b&#39;,&#39;c&#39;,&#39;d&#39;]; 
var removeArray = array.splice(1,1,&#39;insert&#39;); 
alert(array);//弹出a,insert,c,d 
alert(removeArray);//弹出b 
</script> 
</body> 
</html>


以上是JavaScript刪除元素並在陣列中新增元素的方法splice()的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn