Maison >interface Web >js tutoriel >Méthode JavaScript splice() pour supprimer des éléments et ajouter de nouveaux éléments à un tableau

Méthode JavaScript splice() pour supprimer des éléments et ajouter de nouveaux éléments à un tableau

黄舟
黄舟original
2017-11-03 14:02:162423parcourir

Définition et utilisation

La méthode splice() ajoute/supprime des éléments du tableau et renvoie l'élément supprimé.

Remarque : Cette méthode modifiera le tableau d'origine.

Syntaxe

arrayObject.splice(index,howmany,item1,.....,itemX)
Paramètre Description
index Obligatoire . Integer
参数 描述
index 必需。整数,规定添加/删除项目的位置,使用负数可从数组结尾处规定位置。
howmany 必需。要删除的项目数量。如果设置为 0,则不会删除项目。
item1, ..., itemX 可选。向数组添加的新项目。
, spécifie la position d'ajout/suppression d'éléments. Utilisez des nombres négatifs pour spécifier la position à partir du. fin du tableau.
combien Obligatoire. Le nombre d'éléments à supprimer. S'il est défini sur 0, les éléments ne seront pas supprimés.
item1, ..., itemX Facultatif. Nouveaux éléments ajoutés au tableau.

Valeur de retour

类型 描述
Array 包含被删除项目的新数组,如果有的话

Explication

La méthode splice() peut supprimer les zéros à partir d'un index ou de plusieurs éléments et remplace ces éléments supprimés par une ou plusieurs valeurs déclarées dans la liste d'arguments.

Si un élément est supprimé de arrayObject, un tableau contenant l'élément supprimé est renvoyé.

Détails techniques

JavaScript
JavaScript 版本: 1.2
Version :
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 = [&#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>


Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn