Heim  >  Artikel  >  Web-Frontend  >  NodeList to Array: Ist „Array.from()“ wirklich das Schnellste?

NodeList to Array: Ist „Array.from()“ wirklich das Schnellste?

Patricia Arquette
Patricia ArquetteOriginal
2024-11-03 03:49:03259Durchsuche

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

Konvertierung von NodeList zu Array: Enthüllung des schnellsten Ansatzes

Frühere Diskussionen haben die Verwendung von Array.prototype.slice.call(nl) vorgeschlagen. Die Methode bietet die effizienteste Konvertierung von NodeList in Array. Jüngste Benchmarkings haben jedoch eine erstaunlich andere Realität offenbart. Entgegen der landläufigen Meinung übertrifft der traditionelle For-Schleifen-Ansatz for(var i = 0, n; n = nl[i]; i) arr.push(n); die oben genannte Methode um ein bemerkenswertes Dreifaches.

Diese verblüffende Erkenntnis weckt die Neugier: Handelt es sich dabei lediglich um eine Eigenart von Chromium 6, oder verbirgt sich ein noch schnellerer Ansatz? Glücklicherweise wird uns mit der Einführung von ES6 eine Lösung präsentiert, die beide zuvor vorgeschlagenen Methoden mühelos übertrifft.

Array.from(): Die ultimative Lösung

Die Die in ES6 eingeführte Funktion Array.from() bietet eine prägnante und blitzschnelle Möglichkeit, eine NodeList in ein Array zu konvertieren. Die Syntax ist unkompliziert:

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

Diese einzelne Codezeile führt die Konvertierung mit unübertroffener Effizienz durch und übertrifft ihre Vorgänger um ein Vielfaches. Die Suche nach der schnellsten Konvertierungsmethode gipfelt in der Siegesherrschaft von Array.from() und bietet Entwicklern eine beispiellose Lösung für diese wichtige Aufgabe.

Das obige ist der detaillierte Inhalt vonNodeList to Array: Ist „Array.from()“ wirklich das Schnellste?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn