JavaScript
JavaScript (JS) ist eine leichtgewichtige interpretierte (oder just-in-time kompilierte) Programmiersprache mit erstklassigen Funktionen. Obwohl es am bekanntesten als Skriptsprache für Webseiten ist, wird es auch in vielen nicht-browserbasierten Umgebungen verwendet, wie z.B. Node.js, Apache CouchDB und Adobe Acrobat. JavaScript ist eine prototyp-basierte, multi-paradigmatische, single-threaded, dynamische Sprache, die objektorientierte, imperative und deklarative (z.B. funktionale Programmierung) Stile unterstützt.
Die dynamischen Fähigkeiten von JavaScript umfassen die Laufzeit-Objekterstellung, variable Parameterlisten, Funktionsvariablen, dynamische Skripterstellung (via eval
), Objekt-Introspektion (via for...in
und Object
Dienste) und Quellcode-Retrieval (JavaScript-Funktionen speichern ihren Quelltext, der über toString()
abgerufen werden kann).
Dieser Abschnitt ist der JavaScript-Sprache selbst gewidmet und nicht den Teilen, die spezifisch für Webseiten oder andere Host-Umgebungen sind. Für Informationen über APIs, die spezifisch für Webseiten sind, siehe bitte Web APIs und DOM.
Die Standards für JavaScript sind die ECMAScript Language Specification (ECMA-262) und die ECMAScript Internationalization API specification (ECMA-402). Sobald ein Browser eine Funktion implementiert, versuchen wir, sie zu dokumentieren. Das bedeutet, dass in Fällen, in denen einige Vorschläge für neue ECMAScript-Funktionen bereits in Browsern implementiert wurden, Dokumentationen und Beispiele in MDN-Artikeln einige dieser neuen Funktionen verwenden können. Meistens geschieht dies zwischen den Stufen 3 und 4 und normalerweise bevor die Spezifikation offiziell veröffentlicht wird.
Verwechseln Sie JavaScript nicht mit der Java-Programmiersprache — JavaScript ist nicht "Interpreted Java". Sowohl "Java" als auch "JavaScript" sind Marken oder eingetragene Marken von Oracle in den USA und anderen Ländern. Die beiden Programmiersprachen haben jedoch sehr unterschiedliche Syntax, Semantik und Verwendung.
Die JavaScript-Dokumentation über Kernfunktionen der Sprache (größtenteils reines ECMAScript) umfasst Folgendes:
Für weitere Informationen über JavaScript-Spezifikationen und verwandte Technologien siehe JavaScript-Technologieübersicht.
Anfängeranleitungen
Lernen Sie mit unseren Anfängeranleitungen, wie Sie von Grund auf in JavaScript programmieren.
- Ihre erste Website: Interaktivität hinzufügen
-
Dieser Artikel bietet eine kurze Einführung in JavaScript und seine Verwendung, speziell für Personen, die völlig neu in der Webentwicklung sind.
- Dynamisches Scripting mit JavaScript
-
Das JavaScript-Modul unseres Leitfadens zur Webentwicklung lehrt alle grundlegenden JavaScript-Konzepte von Grund auf.
- JavaScript-Frameworks und -Bibliotheken
-
JavaScript-Frameworks sind ein wesentlicher Bestandteil moderner Frontend-Webentwicklung. Sie bieten Entwicklern bewährte Werkzeuge zum Erstellen skalierbarer, interaktiver Webanwendungen. Viele moderne Unternehmen nutzen Frameworks als Standardteil ihrer Toolchain, so dass viele Frontend-Entwicklungsjobs mittlerweile Framework-Erfahrung erfordern. In dieser Artikelreihe möchten wir Ihnen einen bequemen Einstiegspunkt bieten, um mit dem Lernen von Frameworks zu beginnen.
JavaScript-Leitfäden
Grundlegende Sprachleitfäden
- JavaScript-Leitfaden
-
Ein viel detaillierterer Leitfaden zur JavaScript-Sprache, der sich an diejenigen richtet, die bereits Erfahrungen im Programmieren entweder in JavaScript oder einer anderen Sprache haben.
Mittelstufe
- Erweiterte JavaScript-Objekte
-
Die objektorientierte Natur von JavaScript ist wichtig zu verstehen, wenn Sie Ihr Wissen über die Sprache vertiefen und effizienteren Code schreiben möchten. Deshalb haben wir dieses Modul bereitgestellt, um Ihnen zu helfen.
- Asynchrones JavaScript
-
In diesem Modul betrachten wir asynchrones JavaScript, warum es wichtig ist und wie es effektiv eingesetzt werden kann, um potenziell blockierende Operationen zu behandeln, wie z.B. das Abrufen von Ressourcen von einem Server.
- Client-seitige Web-APIs
-
Erforscht, was APIs sind und wie einige der gebräuchlichsten APIs verwendet werden, denen Sie bei Ihrer Entwicklungsarbeit häufig begegnen werden.
- JavaScript-Sprachübersicht
-
Eine Übersicht über die grundlegende Syntax und Semantik von JavaScript, um für diejenigen, die aus anderen Programmiersprachen kommen, den Einstieg zu erleichtern.
- JavaScript-Datenstrukturen
-
Übersicht über verfügbare Datenstrukturen in JavaScript.
- Vergleichsoperationen und Gleichheit
-
JavaScript bietet drei verschiedene Wertvergleichsoperationen: strikte Gleichheit mit
===
, lose Gleichheit mit==
und dieObject.is()
Methode. - Enumerierbarkeit und Eigentum von Eigenschaften
-
Wie verschiedene Methoden, die eine Gruppe von Objekteigenschaften der Reihe nach besuchen, mit der Enumerierbarkeit und dem Eigentum von Eigenschaften umgehen.
- Closures
-
Ein Closure ist die Kombination aus einer Funktion und der lexikalischen Umgebung, in der diese Funktion deklariert wurde.
Fortgeschritten
- Vererbung und die Prototypkette
-
Erklärung der weitverbreiteten und häufig unterschätzten Prototyp-basierten Vererbung.
- Speicherverwaltung
-
Lebenszyklus von Speicher und Müllabfuhr in JavaScript.
- Der Ereignisschleifen-Mechanismus
-
JavaScript hat ein Laufzeitmodell, das auf einer "Ereignisschleife" basiert.
Referenz
Durchsuchen Sie die vollständige JavaScript-Referenz Dokumentation.
- Standardobjekte
-
Lernen Sie standardmäßige eingebaute Objekte kennen:
Array
,Boolean
,Error
,Function
,JSON
,Math
,Number
,Object
,RegExp
,String
,Map
,Set
,WeakMap
,WeakSet
und andere. - Ausdrücke und Operatoren
-
Erfahren Sie mehr über das Verhalten der JavaScript-Operatoren
instanceof
,typeof
,new
,this
, die Operatorpriorität und mehr. - Anweisungen und Deklarationen
-
Lernen Sie, wie
do-while
,for-in
,for-of
,try-catch
,let
,var
,const
,if-else
,switch
und weitere JavaScript-Anweisungen und Schlüsselwörter funktionieren. - Funktionen
-
Lernen Sie, wie Sie mit JavaScript-Funktionen arbeiten können, um Ihre Anwendungen zu entwickeln.
- Klassen
-
JavaScript-Klassen sind der angemessenste Weg, um objektorientierte Programmierung zu betreiben.