"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > NodeList to Array: ¿Es `Array.from()` realmente el más rápido?

NodeList to Array: ¿Es `Array.from()` realmente el más rápido?

Publicado el 2024-11-08
Navegar:507

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

Conversión de NodeList a Array: revelando el enfoque más rápido

Discusiones anteriores han sugerido que utilizar Array.prototype.slice.call(nl) El método ofrece la conversión más eficiente de NodeList a Array. Sin embargo, evaluaciones comparativas recientes han revelado una realidad sorprendentemente diferente. Contrariamente a la creencia popular, el enfoque tradicional del bucle for, for(var i = 0, n; n = nl[i]; i) arr.push(n);, supera el método antes mencionado por un notable triple margen.

Este hallazgo desconcertante despierta curiosidad: ¿Es esto una mera peculiaridad del Cromo 6, o se esconde un enfoque aún más rápido? Afortunadamente, con la llegada de ES6, se nos presenta una solución que supera sin esfuerzo a ambos métodos propuestos anteriormente.

Array.from(): La solución definitiva

La La función Array.from(), introducida en ES6, proporciona un medio conciso e increíblemente rápido para convertir una NodeList en una matriz. Su sintaxis es sencilla:

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

Esta única línea de código logra la conversión con una eficiencia inigualable, eclipsando a sus predecesoras por un margen significativo. Por lo tanto, la búsqueda del método de conversión más rápido culmina con el reinado triunfante de Array.from(), que ofrece a los desarrolladores una solución incomparable para esta tarea esencial.

Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3