Maison >interface Web >js tutoriel >Comment supprimer en toute sécurité des éléments du tableau lors d'une boucle en JavaScript ?
Parcourir un tableau et supprimer des éléments sans rompre la boucle
Pour parcourir efficacement un tableau et supprimer des éléments sans perturber l'itération, un une approche alternative est nécessaire. Lors de l'utilisation de splice() pour supprimer un élément lors d'une boucle, la réindexation du tableau peut causer des problèmes.
Une solution consiste à décrémenter le compteur de boucle (i) après la suppression d'un élément, en compensant la réindexation du tableau. -indexation.
for (i = 0, len = Auction.auctions.length; i < len; i++) { auction = Auction.auctions[i]; Auction.auctions[i]['seconds'] --; if (auction.seconds < 0) { Auction.auctions.splice(i, 1); i--; // Decrement to compensate for re-indexing } }
Alternativement, itérer dans l'ordre inverse peut également résoudre le problème car la suppression d'un élément n'affecte pas les éléments qui le précèdent dans le tableau.
var i = Auction.auctions.length while (i--) { ... if (...) { Auction.auctions.splice(i, 1); } }
En employant l'une de ces stratégies, vous pouvez efficacement parcourir un tableau, supprimer des éléments et maintenir une itération continue sans rompre la boucle de manière inattendue.
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!