Maison > Article > interface Web > Comment supprimer des éléments de tableau en javascript
Comment supprimer des éléments d'un tableau en JavaScript : 1. Utilisez l'attribut length ; 2. Utilisez le mot-clé delete ; 3. Utilisez la méthode de pile [pop()] 4. Utilisez la file d'attente [shift()] ; 5. Utilisez la méthode d'opération [splice()].
L'environnement d'exploitation de ce tutoriel : système Windows 7, JavaScript version 1.8.5, ordinateur DELL G3.
Comment supprimer des éléments d'un tableau en JavaScript :
1 L'attribut length
L'attribut length du tableau en JavaScript. est tout à fait unique - Il n'est pas en lecture seule. Par conséquent, vous pouvez définir cette propriété pour supprimer des éléments de la fin du tableau ou ajouter de nouveaux éléments.
var colors = ["red", "blue", "grey"]; // 创建一个包含3个字符串的数组 colors.length = 2; console.log(colors[2]); // undefined
2. mot-clé delete
JavaScript fournit un mot-clé delete pour supprimer (effacer) les éléments du tableau.
var colors = ["red", "blue", "grey", "green"]; delete colors[0]; console.log(colors); // [undefined, "blue", "grey", "green"]
Il convient de noter qu'après avoir utilisé delete pour supprimer un élément, la longueur du tableau ne change pas, mais l'élément supprimé est défini sur indéfini.
3. Méthode de pile pop()
L'objet Array en JavaScript fournit une méthode de pile pop() pour afficher et renvoyer le dernier élément du tableau. être utilisé dans une certaine mesure comme une suppression.
La règle d'accès à la structure de données de la pile est FILO (First In Last Out). L'opération de pile ajoute des éléments en haut de la pile et supprime des éléments du haut de la pile. Utilisez la méthode pop(). , qui peut supprimer le dernier élément du tableau et renvoie cet élément, en décrémentant la longueur du tableau de un.
var colors = ["red", "blue", "grey"]; var color = colors.pop(); console.log(color); // "grey" console.log(colors.length); // 2
On peut voir que lorsque la méthode pop() est appelée, le tableau renvoie le dernier élément, qui est "gris", et il ne reste que deux éléments dans le tableau.
4. Méthode de file d'attente shift()
L'objet Array en JavaScript fournit une méthode de file d'attente shift() pour afficher et renvoyer le premier élément du tableau. peut également être utilisé comme une suppression dans une certaine mesure.
La règle d'accès à la structure de données de la file d'attente est FIFO (First In First Out). La file d'attente ajoute des éléments à la fin de la liste et supprime les éléments du début de la liste. il peut déplacer Diviser le premier élément du tableau et renvoyer cet élément, et réduire la longueur du tableau de un.
var colors = ["red", "blue", "grey"]; var color = colors.shift(); console.log(color); // "red" console.log(colors.length); // 2
On peut voir que lorsque la méthode shift() est appelée, le tableau renvoie le premier élément, qui est "rouge", et il ne reste que deux éléments dans le tableau.
5. Méthode d'opération splice()
L'objet Array en JavaScript fournit une méthode splice() pour effectuer des opérations spécifiques sur le tableau. splice() est probablement la méthode de tableau la plus puissante. Elle peut être utilisée de plusieurs manières. Ici, nous présentons uniquement la méthode de suppression des éléments du tableau. Lors de la suppression d'éléments du tableau, il peut supprimer n'importe quel nombre d'éléments en spécifiant seulement 2 paramètres : la position du premier élément à supprimer et le nombre d'éléments à supprimer.
var colors = ["red", "blue", "grey"]; var color = colors.splice(0, 1); console.log(color); // "red" console.log(colors); // ["blue", "grey"]
On peut voir que lorsque la méthode splice(0, 1) est appelée, un élément est supprimé du tableau en commençant par le premier élément.
6. Méthode d'itération
La méthode dite d'itération consiste à utiliser une boucle pour itérer les éléments du tableau et supprimer les éléments qui correspondent aux éléments à supprimer . L'endroit le plus couramment utilisé peut être lorsque les éléments du tableau sont des objets et que les éléments du tableau peuvent être supprimés en fonction d'un certain attribut de l'objet (tel que l'ID).
La première méthode utilise la boucle ForEach la plus courante pour comparer les éléments et les supprimer après les avoir trouvés.
var colors = ["red", "blue", "grey"]; colors.forEach(function(item, index, arr) { if(item === "red") { arr.splice(index, 1); } });
Vous pouvez voir que la méthode splice() est également nécessaire pour réaliser la suppression. La boucle sert simplement à trouver des éléments spécifiques. Une autre idée consiste à pousser les éléments qui n'ont pas besoin d'être supprimés dans un nouveau tableau dans une boucle, ce qui peut également atteindre l'objectif de supprimer faussement des éléments spécifiques.
Pour la deuxième méthode, nous utilisons la méthode du filtre dans la boucle.
var colors = ["red", "blue", "grey"]; colors = colors.filter(function(item) { return item != "red" }); console.log(colors); // ["blue", "grey"]
Le code est très simple. Découvrez le nombre d'éléments dont les éléments ne sont pas rouges et remettez-le en couleurs (en fait, vous obtenez un nouveau tableau, pas supprimez le tableau d'origine dans une certaine mesure). cela peut être considéré comme une suppression. Le but d'un élément spécifique.
7. Méthode de prototype de prototype
Vous pouvez atteindre l'objectif de suppression en ajoutant une méthode au prototype du tableau.
Array.prototype.remove = function(dx) { if(isNaN(dx) || dx > this.length){ return false; } for(var i = 0, n = 0; i < this.length; i++) { if(this[i] != this[dx]) { this[n++] = this[i]; } } this.length -= 1; }; var colors = ["red", "blue", "grey"]; colors.remove(1); console.log(colors); // ["red", "grey"]
Cette méthode consiste en fait à implémenter vous-même une logique de suppression, puis à ajouter la méthode de suppression à l'objet prototype d'Array, puis tous les objets Array de cet environnement peuvent utiliser cette méthode. Bien que cela soit possible, il n’est pas recommandé de modifier le prototype d’un objet natif dans une application de production. La raison est simple. Si une méthode manque dans une certaine implémentation et que vous ajoutez cette méthode au prototype de l'objet natif, alors lorsque le code est exécuté dans une autre implémentation prenant en charge cette méthode, cela peut provoquer un conflit de nom. Et cela pourrait accidentellement entraîner le remplacement des méthodes natives.
Recommandations d'apprentissage gratuites associées : javascript(vidéo)
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!