Comprendre la fonction [].forEach.call() en JavaScript
Êtes-vous curieux de connaître l'utilisation intrigante de [].forEach. appeler() en JavaScript ? Examinons son objectif et ses fonctionnalités.
En JavaScript, les tableaux possèdent une méthode puissante appelée forEach, qui vous permet d'effectuer des opérations sur chaque élément d'un tableau. Cependant, dans certains cas, vous pouvez rencontrer du code dans lequel un tableau vide est utilisé avant d'appliquer forEach à une liste de nœuds.
Décomposer le code
Considérez ce qui suit extrait de code :
[].forEach.call(document.querySelectorAll('a'), function(el) { // Perform some operation on the current node });
Que se passe-t-il ici ? Décomposons-le :
Exemple d'utilisation
Regardons un exemple pour mieux comprendre le fonctionnement de ce code :
const myNodeList = document.querySelectorAll('a'); [].forEach.call(myNodeList, function(el) { el.style.color = 'blue'; });
Dans ce code :
Syntaxe alternative pour ES6
Dans ES6 (ECMAScript 2015) et au-delà, une syntaxe plus moderne et concise Il existe une syntaxe pour obtenir le même résultat :
[...document.querySelectorAll('a')].forEach(el => { el.style.color = 'blue'; });
Dans cette syntaxe mise à jour, nous utilisons l'opérateur de propagation (...) pour convertir la liste de nœuds en un tableau, qui peut ensuite être itéré à l'aide de forEach.
Conclusion
La technique [].forEach.call() fournit un moyen concis et efficace d'appliquer la méthode forEach à des objets de type tableau tels que des listes de nœuds. En utilisant cette technique, vous pouvez facilement effectuer des opérations sur chaque élément de la liste. N'oubliez pas, cependant, que dans le JavaScript moderne, des syntaxes alternatives telles que l'opérateur spread peuvent offrir une solution plus élégante.
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!