Maison >interface Web >js tutoriel >NodeList to Array : `Array.from()` est-il vraiment le plus rapide ?

NodeList to Array : `Array.from()` est-il vraiment le plus rapide ?

Patricia Arquette
Patricia Arquetteoriginal
2024-11-03 03:49:03351parcourir

 NodeList to Array: Is `Array.from()` Really the Fastest?

Conversion de NodeList en tableau : dévoilement de l'approche la plus rapide

Des discussions précédentes ont suggéré que l'utilisation de Array.prototype.slice.call(nl) La méthode offre la conversion la plus efficace de NodeList en Array. Cependant, de récentes analyses comparatives ont révélé une réalité étonnamment différente. Contrairement à la croyance populaire, l'approche traditionnelle de la boucle for, for(var i = 0, n; n = nl[i]; i) arr.push(n);, surpasse la méthode susmentionnée par une triple marge remarquable.

Cette découverte déroutante suscite la curiosité : s’agit-il d’une simple bizarrerie de Chromium 6, ou une approche encore plus rapide se cache-t-elle ? Heureusement, avec l'avènement d'ES6, nous disposons d'une solution qui surpasse sans effort les deux méthodes proposées précédemment.

Array.from() : la solution ultime

Le La fonction Array.from(), introduite dans ES6, fournit un moyen succinct et extrêmement rapide de convertir une NodeList en un tableau. Sa syntaxe est simple :

// nl is a NodeList
let myArray = Array.from(nl)

Cette seule ligne de code réalise la conversion avec une efficacité inégalée, éclipsant de loin ses prédécesseurs. Ainsi, la quête de la méthode de conversion la plus rapide culmine avec le règne triomphal d'Array.from(), offrant aux développeurs une solution sans précédent pour cette tâche essentielle.

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!

Déclaration:
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