Heim > Web-Frontend > js-Tutorial > Slice vs. For-Schleife: Welche JavaScript-Array-Duplikationsmethode ist schneller?

Slice vs. For-Schleife: Welche JavaScript-Array-Duplikationsmethode ist schneller?

Patricia Arquette
Freigeben: 2024-12-20 01:08:10
Original
429 Leute haben es durchsucht

Slice vs. For Loop: Which JavaScript Array Duplication Method is Faster?

Arrays in JavaScript duplizieren: Vergleich von Slice und Loop auf Geschwindigkeit

Wenn man in JavaScript vor der Aufgabe steht, ein Array zu duplizieren, stößt man auf zwei gängige Ansätze: die Slice-Methode und eine for-Schleife. Obwohl beide Methoden ein flaches Kopieren ermöglichen, bei dem Objektreferenzen und nicht die Objekte selbst dupliziert werden, können ihre Geschwindigkeitsleistungen variieren.

Leistungsbenchmarks

Umfangreiche Benchmarks haben ergeben, dass sie optimal sind Die Klonmethode hängt vom verwendeten Browser ab. Bei Blink-Browsern (z. B. Chrome, Edge) dominiert die Methode „slice()“ und übertrifft die for-Schleife um das 2,4-fache. In Nicht-Blink-Browsern ist jedoch die for-Schleife die schnellste Option.

Beispiel-Leistungsskripte

Um diese Unterschiede zu veranschaulichen, betrachten Sie die folgenden Leistungsskripte die Sie in der Konsole Ihres Browsers ausführen können:

Für Schleife:

n = 1000*1000;
start = + new Date();
a = Array(n); 
b = Array(n); 
i = a.length;
while(i--) b[i] = a[i];
console.log(new Date() - start);
Nach dem Login kopieren

Slice:

n = 1000*1000;
start = + new Date();
a = Array(n); 
b = a.slice();
console.log(new Date() - start);
Nach dem Login kopieren

Beachten Sie, dass sich diese Skripte auf das Klonen der Array-Objekte selbst konzentrieren. Der Inhalt der Arrays, der möglicherweise Objektreferenzen enthält, wird durch Referenz kopiert und nicht tief geklont.

Das obige ist der detaillierte Inhalt vonSlice vs. For-Schleife: Welche JavaScript-Array-Duplikationsmethode ist schneller?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage