JS-Tutorial

JS-HAUS JS-Einführung JS Wohin JS-Ausgabe JS-Anweisungen JS-Syntax JS-Kommentare JS-Variablen JS Let JS Konst JS-Operatoren JS-Arithmetik JS-Aufgabe JS-Datentypen JS-Funktionen JS-Objekte JS-Ereignisse JS-Strings JS-String-Methoden Suche nach JS-Strings JS-String-Vorlagen JS-Nummern JS-Zahlenmethoden JS-Arrays JS-Array-Methoden JS-Array-Sortierung JS-Array-Iteration JS-Array-Konstante JS-Daten JS-Datumsformate JS Date Get-Methoden JS-Datumssatzmethoden JS Math JS Zufällig JS Boolesche Werte JS-Vergleiche JS-Bedingungen JS-Schalter JS-Schleife für JS-Schleife für In JS-Schleife für Of JS-Schleife While JS Pause JS-Iterables JS-Sets JS-Karten JS Typeof JS-Typkonvertierung JS Bitweise JS RegExp JS-Fehler JS-Bereich JS Heben Strenger JS-Modus JS dieses Schlüsselwort JS-Pfeilfunktion JS-Klassen JS JSON JS-Debugging JS-Styleguide JS Best Practices JS-Fehler JS-Leistung JS Reservierte Wörter

JS-Versionen

JS-Versionen JS 2009 (ES5) JS 2015 (ES6) JS 2016 JS 2017 JS 2018 JS IE / Edge JS-Geschichte

JS-Objekte

Objektdefinitionen Objekteigenschaften Objektmethoden Objektanzeige Objektzugriffsmethoden Objektkonstruktoren Objekt-Prototypen Objekt-Iterables Objektsätze Objektkarten Objektreferenz

JS-Funktionen

Funktionsdefinitionen Funktionsparameter Funktionsaufruf Funktionsaufruf Funktion anwenden Funktionsschließungen

JS-Klassen

Klasse Einführung Klassenvererbung Klasse statisch

JS asynchron

JS-Rückrufe JS asynchron JS verspricht JS Async/Warten

JS-HTML-DOM

DOM-Einführung DOM-Methoden DOM-Dokument DOM-Elemente DOM-HTML DOM-Formulare DOM-CSS DOM-Animationen DOM-Ereignisse DOM-Ereignis-Listener DOM-Navigation DOM-Knoten DOM-Sammlungen DOM-Knotenlisten

Stückliste des JS-Browsers

JS-Fenster JS-Bildschirm JS-Standort JS-Geschichte JS-Navigator JS-Popup-Warnung JS-Timing JS-Cookies

JS-Web-APIs

Web-API-Einführung Web Forms-API Webprotokoll-API Webspeicher-API Web Worker-API Web-Fetch-API Web-Geolocation-API

JS AJAX

AJAX-Einführung AJAX-XMLHttp AJAX-Anfrage AJAX-Antwort AJAX-XML-Datei AJAX-PHP AJAX ASP AJAX-Datenbank AJAX-Anwendungen AJAX-Beispiele

JS JSON

JSON-Einführung JSON-Syntax JSON vs. XML JSON-Datentypen JSON-Parsing JSON-Stringify JSON-Objekte JSON-Arrays JSON-Server JSON-PHP JSON-HTML JSON JSONP

JS vs. jQuery

jQuery-Selektoren jQuery-HTML jQuery-CSS jQuery-DOM

JS-Grafik

JS-Grafik JS-Leinwand JS Plotly JS Chart.js JS Google-Diagramm JS D3.js

JS-Beispiele

JS-Beispiele JS-HTML-DOM JS-HTML-Eingabe JS-HTML-Objekte JS-HTML-Ereignisse JS-Browser JS-Editor JS-Übungen JS-Quiz JS-Zertifikat

JS-Referenzen

JavaScript-Objekte HTML-DOM-Objekte


JavaScript- Leistung


So beschleunigen Sie Ihren JavaScript-Code.


Reduzieren Sie die Aktivität in Schleifen

Schleifen werden häufig in der Programmierung verwendet.

Jede Anweisung in einer Schleife, einschließlich der for-Anweisung, wird für jede Iteration der Schleife ausgeführt.

Anweisungen oder Zuweisungen, die außerhalb der Schleife platziert werden können, beschleunigen die Ausführung der Schleife.

Schlecht:

for (let i = 0; i < arr.length; i++) {

Besserer Code:

let l = arr.length;
for (let i = 0; i < l; i++) {

Der fehlerhafte Code greift bei jedem Schleifendurchlauf auf die length-Eigenschaft eines Arrays zu.

Der bessere Code greift auf die length-Eigenschaft außerhalb der Schleife zu und lässt die Schleife schneller laufen.


Reduzieren Sie den DOM-Zugriff

Der Zugriff auf das HTML-DOM ist im Vergleich zu anderen JavaScript-Anweisungen sehr langsam.

Wenn Sie erwarten, mehrmals auf ein DOM-Element zuzugreifen, greifen Sie einmal darauf zu und verwenden Sie es als lokale Variable:

Beispiel

const obj = document.getElementById("demo");
obj.innerHTML = "Hello";


Reduzieren Sie die DOM-Größe

Halten Sie die Anzahl der Elemente im HTML-DOM klein.

Dadurch wird das Laden von Seiten immer verbessert und das Rendern (Seitenanzeige) beschleunigt, insbesondere auf kleineren Geräten.

Jeder Versuch, das DOM zu durchsuchen (wie getElementsByTagName), profitiert von einem kleineren DOM.


Vermeiden Sie unnötige Variablen

Erstellen Sie keine neuen Variablen, wenn Sie nicht vorhaben, Werte zu speichern.

Oft können Sie Code wie folgt ersetzen:

let fullName = firstName + " " + lastName;
document.getElementById("demo").innerHTML = fullName;

Mit diesem:

document.getElementById("demo").innerHTML = firstName + " " + lastName;

JavaScript-Laden verzögern

Wenn Sie Ihre Skripts am Ende des Seitentexts platzieren, lädt der Browser die Seite zuerst.

Während ein Skript heruntergeladen wird, startet der Browser keine anderen Downloads. Darüber hinaus können alle Parsing- und Rendering-Aktivitäten blockiert werden.

Die HTTP-Spezifikation definiert, dass Browser nicht mehr als zwei Komponenten parallel herunterladen sollten.

Eine Alternative ist die Verwendung defer="true"im script-Tag. Das Attribut defer gibt an, dass das Skript ausgeführt werden soll, nachdem die Seite das Parsen beendet hat, aber es funktioniert nur für externe Skripte.

Wenn möglich, können Sie Ihr Skript per Code zur Seite hinzufügen, nachdem die Seite geladen wurde:

Beispiel

<script>
window.onload = function() {
  const element = document.createElement("script");
  element.src = "myScript.js";
  document.body.appendChild(element);
};
</script>

Vermeiden Sie die Verwendung mit

Vermeiden Sie die Verwendung des withSchlüsselworts. Es wirkt sich negativ auf die Geschwindigkeit aus. Es verstopft auch JavaScript-Bereiche.

Das withSchlüsselwort ist im strikten Modus nicht zulässig .