Detailliertes Beispiel der Lesegeschwindigkeit von JS-Objekten

Detailliertes Beispiel der Lesegeschwindigkeit von JS-Objekten

1. Der Zugriff auf Literale und lokale Variablen ist am schnellsten, während der Zugriff auf Array-Elemente und Objektmitglieder relativ langsam ist. Beim Zugriff auf ein Objektelement wird die Prototypenkette ebenso durchsucht wie die Scope-Kette.

2. Wenn sich das gefundene Mitglied zu tief in der Prototypkette befindet, ist die Zugriffsgeschwindigkeit langsam.

Versuchen Sie daher, die Anzahl der Suchvorgänge und die Verschachtelungstiefe der Objektmitglieder zu minimieren.

Beispiele

 // Führe zwei Objektelementsuchen durch function hasEitherClass(element, className1, className2) {
    returniere element.klassenName === Klassenname1 || element.klassenName === Klassenname2;
  }
  //Optimierung, wenn sich die Variable nicht ändert, können Sie eine lokale Variable verwenden, um den Suchinhalt zu speichern function hasEitherClass(element, className1, className2) {
    const currentClassName = element.klassenname;
    gibt aktuellenKlassennamen zurück === Klassenname1 || aktuellenKlassennamen === Klassenname2;
  }

Inhaltserweiterung:

Leistungsprobleme bei JS-Objektoperationen

1 Je länger die Zeichenfolge ist, desto mehr Zeit wird für die Verwendung von str+="xxx" benötigt, was sich erheblich (fast exponentiell) erhöht.

2 Wenn das Objektarray nur 400 Elemente hat, beträgt die Zugriffszeit auf die Eigenschaften und Methoden jedes Elements 1/4 Millisekunde für jede Eigenschaft oder Methode! Wenn ein Element 10 Attribute hat, dauert eine Durchquerung des Arrays mindestens 1 Sekunde, was schrecklich ist.

3 Dateisystemoperationen, insbesondere Schreiboperationen, sind nahezu proportional zum Quadrat der Länge der zu schreibenden Zeichenfolge.

4 Verwenden Sie keine eigenen Methoden, um Zeichenfolgenoperationen durchzuführen, insbesondere Ersetzungen, Suchen und Vergleiche.

Ich habe keine guten Kenntnisse über reguläre Ausdrücke. Bei der Verwendung von benutzerdefinierten Funktionen habe ich festgestellt, dass bei der in 2) oben erwähnten Durchquerung

Die benutzerdefinierte Funktion nimmt bis zu 80 % der Gesamtzeit in Anspruch!

Damit ist dieser Artikel mit dem ausführlichen Beispiel der Lesegeschwindigkeit von JS-Objekten abgeschlossen. Weitere Informationen zur Lesegeschwindigkeit von JS-Objekten finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen!

Das könnte Sie auch interessieren:
  • Analyse von 4 Implementierungsmethoden der JavaScript-Vorabanalyse
  • JS-Bereich, Bereichskette und Vorabanalyse
  • Detaillierte Erklärung des JS-Umfangs und des Voranalysemechanismus
  • Objektorientierte JavaScript-Implementierung eines Lupengehäuses
  • 5 häufig verwendete Objekte in JavaScript
  • JavaScript Voranalyse, Objektdetails

<<:  Zen HTML Elements Freunde, die Zen-Codierung verwenden, können es sammeln

>>:  Webentwickler sind besorgt über die Koexistenz von IE7 und IE8

Artikel empfehlen

Detailliertes Tutorial zum Upgrade von Zabbix Monitoring 4.4 auf 5.0

1. Zabbix-Backup [root@iZ2zeapnvuohe8p14289u6Z /]...

MySQL-Konfiguration Master-Slave-Server (ein Master und mehrere Slaves)

Inhaltsverzeichnis Ideen Hostkonfiguration Konfig...

CSS erreicht hochadaptiven Vollbildmodus

Beim Schreiben meiner eigenen Demo möchte ich dis...

Detaillierte Erklärung der Whitelist-Regeln von nginx-naxsi

Syntax der Whitelist-Regel: Grundregel wl:ID [neg...

Detaillierte Erklärung zur Verwendung des MySQL-Sicherungsskripts mysqldump

In diesem Artikel wird das MySQL-Sicherungsskript...

Verwenden Sie das Firebug-Tool, um die Seite auf dem iPad zu debuggen

Wie debuggt man eine Seite auf dem iPad? Wenn Sie ...

Detailliertes Tutorial zur Überwachung von Nginx/Tomcat/MySQL mit Zabbix

Inhaltsverzeichnis Zabbix überwacht Nginx Zabbix ...

Detaillierte Analyse des Diff-Algorithmus in React

Verständnis des Diff-Algorithmus in React diff -A...

vue.js Router verschachtelte Routen

Vorwort: Manchmal ist der Hauptteil einer Route d...

WeChat-Applet-Beispiel für die direkte Verwendung von Funktionen in {{ }}

Vorwort Bei der WeChat-Applet-Entwicklung (native...