Maison > interface Web > js tutoriel > ## Pourquoi utiliser `[].forEach.call()` pour parcourir les listes de nœuds en JavaScript ?

## Pourquoi utiliser `[].forEach.call()` pour parcourir les listes de nœuds en JavaScript ?

Barbara Streisand
Libérer: 2024-10-25 04:29:29
original
760 Les gens l'ont consulté

## Why Use `[].forEach.call()` to Iterate Over Node Lists in JavaScript?

Comprendre le comportement de [].forEach.call() en JavaScript

[][] est un tableau vide en JavaScript qui donne accès à des prototypes de tableau comme . pourChacun. Ce mécanisme est souvent utilisé pour parcourir des listes de nœuds car il offre un moyen pratique d'exécuter une fonction sur chaque élément d'une liste de nœuds.

La méthode .call() est un prototype de fonction qui vous permet de remplacer le Mot-clé 'this' dans une fonction avec un objet spécifié. Dans le contexte de [].forEach.call(), le tableau vide est attribué comme objet appelant (this), tandis que la liste de nœuds est passée comme premier argument à la méthode .forEach().

Cette technique simplifie le processus de bouclage sur une liste de nœuds en fournissant un accès direct aux propriétés et méthodes de type tableau. La fonction passée à .forEach() reçoit trois arguments :

  1. L'élément de nœud actuel
  2. L'index de l'élément
  3. La liste de nœuds elle-même

Par exemple, l'extrait de code suivant utilise [].forEach.call() pour parcourir toutes les balises « a » d'une page Web :

``
[].forEach. call(document.querySelectorAll('a'), function(el) {
// Faire quelque chose avec chaque balise 'a'
});
``

While .forEach( ) est un moyen pratique de parcourir les listes de nœuds. Il convient de noter que des solutions hackish et inesthétiques, telles que l'utilisation de [].forEach.call(), peuvent encombrer votre base de code. Il est recommandé de s'en tenir au bouclage en ligne ou d'utiliser des méthodes d'assistance et des bibliothèques propres qui fournissent cette fonctionnalité d'une manière plus lisible et maintenable.

ES6 introduit des options plus simples, telles que les opérateurs Rest et Spread, qui le rendent plus facile à convertir entre des tableaux et des objets de type tableau, éliminant ainsi le besoin d'approches hackish.

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!

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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal