Maison > interface Web > js tutoriel > Apprentissage du tableau JS : comment supprimer n'importe quel élément en fonction de l'indice du tableau

Apprentissage du tableau JS : comment supprimer n'importe quel élément en fonction de l'indice du tableau

青灯夜游
Libérer: 2021-08-19 12:05:12
original
11788 Les gens l'ont consulté

Dans l'article précédent "JS Array Learning : Comment supprimer des éléments de tête ou de queue", nous avons présenté comment supprimer des éléments au début ou à la fin d'un tableau. Continuons à apprendre et à pratiquer les tableaux JavaScript et voyons comment supprimer n'importe quel élément basé sur l'indice du tableau. Les amis intéressés peuvent en apprendre davantage ~

Nous savons tous que chaque élément du tableau a un numéro de série, et ce numéro de série commence à partir de Début. à partir de 0, on l'appelle l'index. Selon cet indice de tableau, nous pouvons utiliser la forme de nom du tableau [indice] pour accéder à l'élément de l'indice spécifié. 数组名[下标] 的形式来访问指定下标的元素。

访问到指定元素后,就可以利用 delete运算符 来删除该元素,但数组长度不会发生改变;删除后的该元素会变为空位元素,

var arr=new Array("香蕉","苹果","梨子","橙子","橘子","榴莲");
console.log(arr);

delete arr[1];  //删除下标为1的元素(第二个元素)
console.log(arr);
Copier après la connexion

Apprentissage du tableau JS : comment supprimer nimporte quel élément en fonction de lindice du tableau

空位元素可以读写,length 属性不排斥空位,空元素位返回值为 undefined

console.log(arr[1]);
Copier après la connexion

Apprentissage du tableau JS : comment supprimer nimporte quel élément en fonction de lindice du tableau

说明:空元素与元素的值为 undefined 是两个不同的概念,即使空元素的返回值也是 undefined。JavaScript 在初始化数组时,只有真正存储有值得元素才可以分配内存。

利用delete运算符一次只能删除一个数组元素,且因为不改变数组长度,我们就无法通过length属性来观察这个数组的变化了。那么如果想要在指定下标位置删除一个或多个元素,且是真正的删除这些元素,数组长度要有改变,这要怎么做呢?

可以使用 splice() 方法。之前就说过了splice() 是一个强大的方法,我们已经了解了怎么使用它来插入元素,这次来了解一下怎么使用splice()来在指定下标位置删除一个或多个元素。

删除元素的语法:

array.splice(index,howmany)
Copier après la connexion
  • 第1个参数 index 可以指定起始下标位置(即开始删除元素的位置);

  • 第2个参数 howmany 指定应该删除的元素数目(即需要删除的一个或多个元素)。

我们通过下面的例子来具体看看:

var arr= [1,2,3,4,5];
console.log(arr);

arr.splice(1,2);
console.log(arr);
Copier après la connexion

可以看出:使用arr.splice(1,2)从下标1的位置(数组第2个元素)开始删除2个元素,也就是删除了arr[1]arr[2]

Après avoir accédé à l'élément spécifié, vous pouvez utiliser l'opérateur delete pour supprimer l'élément, mais la longueur du tableau ne changera pas ; l'élément supprimé deviendra un élément vide. ,

var arr= [1,2,3,4,5];
console.log(arr);

arr.splice(0,2);
console.log(arr);
Copier après la connexion
Apprentissage du tableau JS : comment supprimer nimporte quel élément en fonction de lindice du tableauApprentissage du tableau JS : comment supprimer nimporte quel élément en fonction de lindice du tableau

Les éléments vides peuvent être lus et écrits. L'attribut length n'exclut pas les éléments vides. La valeur de retour des éléments vides est indéfinie

var arr= [1,2,3,4,5];
console.log(arr);

//从倒数第二个元素开始,截取两个元素
arr.splice(-2,2);
console.log(arr);
Copier après la connexion
    Apprentissage du tableau JS : comment supprimer nimporte quel élément en fonction de lindice du tableau
  • Explication : Les éléments vides et les éléments dont la valeur n'est pas définie sont deux concepts différents. Même la valeur de retour d'un l'élément vide n'est pas défini. Lorsque JavaScript initialise un tableau, il ne peut allouer de la mémoire que s'il stocke réellement des éléments précieux.

  • L'opérateur delete ne peut être utilisé que pour supprimer un élément du tableau à la fois, et comme la longueur du tableau n'est pas modifiée, nous ne pouvons pas observer de changements dans le tableau via l'attribut length. Donc, si vous souhaitez supprimer un ou plusieurs éléments à une position d'indice spécifiée et supprimer réellement ces éléments, la longueur du tableau doit être modifiée. Que devez-vous faire ?

Vous pouvez utiliser la méthode splice(). Comme je l'ai déjà dit, splice() est une méthode puissante. Nous avons déjà appris à l'utiliser pour insérer des éléments. Cette fois, nous allons apprendre à utiliser splice() pour supprimer un ou plusieurs éléments à un indice spécifié. positionner l'élément. Apprentissage du tableau JS : comment supprimer nimporte quel élément en fonction de lindice du tableau

Syntaxe de suppression d'éléments :
    rrreee
  • Le premier paramètre index peut spécifier la position de l'indice de départ (c'est-à-dire la position où l'élément est supprimé)

Apprentissage du tableau JS : comment supprimer nimporte quel élément en fonction de lindice du tableauLe deuxième paramètre combien spécifie le nombre d'éléments qui doivent être supprimés (c'est-à-dire un ou plusieurs éléments qui doivent être supprimés).

Regardons de plus près l'exemple suivant :

rrreee🎜 On peut voir que : utilisez arr.splice(1,2) pour partir de la position de l'indice 1 (éléments du tableau n°2) commence à supprimer 2 éléments, c'est-à-dire que arr[1] et arr[2] sont supprimés, donc le résultat de sortie est : 🎜 🎜🎜🎜🎜Utilisez la méthode splice (), nous pouvons également implémenter l'opération de suppression d'éléments au début et à la fin du tableau : 🎜🎜🎜🎜Si vous souhaitez supprimer des éléments au début du tableau, définissez simplement la valeur du premier paramètre index de la méthode à 0🎜🎜🎜rrreee🎜 🎜🎜🎜🎜🎜Si vous souhaitez supprimer un élément à la fin du tableau, définissez la valeur du premier paramètre index de cette méthode sur un nombre négatif, alors il sera positionné du côté droit du tableau vers la gauche en fonction de la valeur absolue ; et le deuxième paramètre combien La valeur doit être égale à la valeur de l'index. 🎜🎜🎜rrreee🎜🎜🎜🎜D'accord, c'est tout. Si vous en avez besoin, vous pouvez lire : 🎜Tutoriel avancé javascript🎜🎜.

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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal