| [ Web Proxy ] |
| Viewing: https://developer.mozilla.org/de/docs/Web/JavaScript/Guide/Introduction#what_is_javascript | [Back] [Original] |
Get to know MDN better
Dieser Inhalt wurde automatisch aus dem Englischen bersetzt, und kann Fehler enthalten. Erfahre mehr ber dieses Experiment.
Dieses Kapitel fhrt in JavaScript ein und diskutiert einige seiner grundlegenden Konzepte.
Dieser Leitfaden setzt voraus, dass Sie folgendes Grundwissen besitzen:
Die JavaScript-Dokumentation auf MDN umfasst Folgendes:
JavaScript ist eine plattformbergreifende, objektorientierte Skriptsprache, die verwendet wird, um Webseiten interaktiv zu machen (z. B. durch komplexe Animationen, anklickbare Schaltflchen, Popup-Mens usw.). Es gibt auch fortgeschrittenere serverseitige Versionen von JavaScript wie Node.js, die es ermglichen, einer Website mehr Funktionalitt hinzuzufgen als nur das Herunterladen von Dateien (zum Beispiel Echtzeit-Zusammenarbeit zwischen mehreren Computern). Innerhalb einer Host-Umgebung (zum Beispiel eines Webbrowsers) kann JavaScript mit den Objekten seiner Umgebung verbunden werden, um eine programmatische Kontrolle ber sie zu bieten.
JavaScript enthlt eine Standardbibliothek von Objekten, wie Array, Map und Math, sowie eine Kernmenge von Sprachelementen wie Operatoren, Kontrollstrukturen und Anweisungen. Das Kern-JavaScript kann fr eine Vielzahl von Zwecken erweitert werden, indem es mit zustzlichen Objekten ergnzt wird; zum Beispiel:
Das bedeutet, dass JavaScript im Browser das Aussehen der Webseite (DOM) ndern kann. Und ebenso kann Node.js-JavaScript auf dem Server auf benutzerdefinierte Anfragen reagieren, die durch im Browser ausgefhrten Code gesendet werden.
JavaScript und Java sind in manchen Aspekten hnlich, unterscheiden sich jedoch in wesentlichen Punkten. Die JavaScript-Sprache hnelt Java, hat jedoch nicht dessen statische Typisierung und strenge Typprfung. JavaScript folgt den meisten Java-Ausdruckssyntaxen, Namenskonventionen und grundlegenden Kontrollflussstrukturen, was auch der Grund war, warum es von LiveScript in JavaScript umbenannt wurde.
Im Gegensatz zu Javas Kompilierzeit-System von Klassen, die durch Deklarationen erstellt werden, untersttzt JavaScript ein Laufzeitsystem, das auf einer kleinen Anzahl von Datentypen basiert, die numerische, Boolean- und Zeichenfolgenwerte reprsentieren. JavaScript hat ein prototypbasiertes Objektmodell anstelle des gebruchlicheren klassenbasierten Objektmodells. Das prototypbasierte Modell bietet dynamische Vererbung; das bedeutet, dass das, was vererbt wird, fr einzelne Objekte variieren kann. JavaScript untersttzt auch Funktionen ohne spezielle deklarative Anforderungen. Funktionen knnen Eigenschaften von Objekten sein, die als lose typisierte Methoden ausgefhrt werden.
JavaScript ist im Vergleich zu Java eine sehr freie Sprache. Sie mssen nicht alle Variablen, Klassen und Methoden deklarieren. Sie mssen sich keine Gedanken darber machen, ob Methoden ffentlich, privat oder geschtzt sind, und Sie mssen keine Schnittstellen implementieren. Variablen, Parameter und Rckgabetypen von Funktionen sind nicht explizit typisiert.
Java ist eine klassenbasierte Programmiersprache, die fr schnelle Ausfhrung und Typsicherheit entwickelt wurde. Typsicherheit bedeutet zum Beispiel, dass Sie einen Java-Integer nicht in eine Objektreferenz umwandeln oder durch das Beschdigen des Java-Bytecodes auf privaten Speicher zugreifen knnen. Javas klassenbasiertes Modell bedeutet, dass Programme ausschlielich aus Klassen und deren Methoden bestehen. Javas Klassenerbschaft und starke Typisierung erfordern in der Regel eng gekoppelte Objekthierarchien. Diese Anforderungen machen das Java-Programmieren komplexer als das JavaScript-Programmieren.
Im Gegensatz dazu stammt JavaScript im Geiste von kleineren, dynamisch typisierten Sprachen wie HyperTalk und dBase ab. Diese Skriptsprachen bieten Programmierwerkzeuge fr ein viel breiteres Publikum aufgrund ihrer einfacheren Syntax, spezialisierter eingebauter Funktionalitten und minimaler Anforderungen an die Objekterstellung.
| JavaScript | Java |
|---|---|
| Objektorientiert. Keine Unterscheidung zwischen Objekttypen. Vererbung erfolgt durch den Prototypmechanismus, und Eigenschaften und Methoden knnen jedem Objekt dynamisch hinzugefgt werden. | Klassenbasiert. Objekte sind in Klassen und Instanzen unterteilt, wobei alle Vererbungen durch die Klassenhierarchie erfolgen. Klassen und Instanzen knnen keine Eigenschaften oder Methoden dynamisch hinzugefgt bekommen. |
| Variablendatentypen werden nicht deklariert (dynamische Typisierung, lose typisiert). | Variablendatentypen mssen deklariert werden (statische Typisierung, stark typisiert). |
| Kann nicht automatisch auf die Festplatte schreiben. | Kann automatisch auf die Festplatte schreiben. |
JavaScript ist bei Ecma International standardisiert der europischen Vereinigung zur Standardisierung von Informations- und Kommunikationssystemen (ECMA war frher ein Akronym fr die European Computer Manufacturers Association), um eine standardisierte, internationale Programmiersprache basierend auf JavaScript zu liefern. Diese standardisierte Version von JavaScript, genannt ECMAScript, verhlt sich in allen Anwendungen, die den Standard untersttzen, gleich. Unternehmen knnen die offene Standardsprache nutzen, um ihre Implementierung von JavaScript zu entwickeln. Der ECMAScript-Standard ist in der ECMA-262-Spezifikation dokumentiert.
Der ECMA-262-Standard ist auch von der ISO (International Organization for Standardization) als ISO-16262 genehmigt. Sie knnen die Spezifikation auch auf der Ecma International-Website finden. Die ECMAScript-Spezifikation beschreibt nicht das Document Object Model (DOM), das vom World Wide Web Consortium (W3C) und/oder WHATWG (Web Hypertext Application Technology Working Group) standardisiert ist. Das DOM definiert, wie HTML-Dokumentobjekte Ihrem Skript zugnglich sind. Um einen besseren Eindruck von den verschiedenen Technologien zu bekommen, die beim Programmieren mit JavaScript verwendet werden, lesen Sie bitte den Artikel bersicht ber JavaScript-Technologien.
Die ECMAScript-Spezifikation ist eine Sammlung von Anforderungen zur Implementierung von ECMAScript. Sie ist ntzlich, wenn Sie standardkonforme Sprachfunktionen in Ihrer ECMAScript-Implementierung oder -Engine (wie SpiderMonkey in Firefox oder V8 in Chrome) implementieren mchten.
Das ECMAScript-Dokument ist nicht dazu gedacht, Skriptprogrammierern zu helfen. Verwenden Sie die JavaScript-Dokumentation, um Informationen beim Schreiben von Skripten zu erhalten.
Die ECMAScript-Spezifikation verwendet eine Terminologie und Syntax, die einem JavaScript-Programmierer mglicherweise nicht vertraut ist. Obwohl die Beschreibung der Sprache in ECMAScript abweichen kann, bleibt die Sprache selbst dieselbe. JavaScript untersttzt die gesamte Funktionalitt, die in der ECMAScript-Spezifikation beschrieben ist.
Die JavaScript-Dokumentation beschreibt Aspekte der Sprache, die fr einen JavaScript-Programmierer geeignet sind.
Um mit JavaScript zu beginnen, bentigen Sie lediglich einen modernen Webbrowser. Aktuelle Versionen von Firefox, Chrome, Microsoft Edge und Safari untersttzen alle die Funktionen, die in diesem Leitfaden besprochen werden.
Ein sehr ntzliches Werkzeug zum Erkunden von JavaScript ist die JavaScript-Konsole (manchmal auch als Webkonsole oder einfach die Konsole bezeichnet): Dies ist ein Werkzeug, das es Ihnen ermglicht, JavaScript einzugeben und es in der aktuellen Seite auszufhren.
Die hier gezeigten Screenshots zeigen die Firefox-Webkonsole, aber alle modernen Browser bieten eine Konsole, die auf hnliche Weise funktioniert.
Die genauen Anweisungen zum ffnen der Konsole variieren von Browser zu Browser:
Die Konsole erscheint unten im Browserfenster. Am unteren Rand der Konsole befindet sich eine Eingabezeile, in die Sie JavaScript eingeben knnen, und die Ausgabe erscheint im oberen Bereich:
Die Konsole funktioniert genau so wie eval: Der zuletzt eingegebene Ausdruck wird zurckgegeben. Der Einfachheit halber kann man sich vorstellen, dass jedes Mal, wenn etwas in die Konsole eingegeben wird, es tatschlich von console.log um eval herum umgeben ist, etwa so:
console.log(eval("3 + 5"));
Standardmig wird die Zeichenkette, die Sie eingegeben haben, ausgefhrt, wenn Sie Enter (oder Return, je nach Tastatur) nach einer Zeile Code drcken. Um eine mehrzeilige Eingabe einzugeben:
function foo() { eingegeben haben), behandelt die Konsole Enter als Zeilenumbruch und lsst Sie eine weitere Zeile eingeben.Um mit dem Schreiben von JavaScript zu beginnen, ffnen Sie die Konsole, kopieren Sie den folgenden Code und fgen Sie ihn an der Eingabeaufforderung ein:
(function () {
"use strict";
/* Start of your code */
function greetMe(yourName) {
alert(`Hello ${yourName}`);
}
greetMe("World");
/* End of your code */
})();
Drcken Sie Enter, um zu sehen, wie es in Ihrem Browser entfaltet wird!
Auf den folgenden Seiten fhrt Sie dieser Leitfaden in die JavaScript-Syntax und Sprachmerkmale ein, sodass Sie in der Lage sein werden, komplexere Anwendungen zu schreiben.
Denken Sie jedoch daran, immer (function(){"use strict"; vor Ihrem Code einzuschlieen und })(); ans Ende Ihres Codes anzufgen. Die Artikel ber den Strict Mode und IIFE erklren, was diese tun, aber vorerst knnen sie wie folgt gedacht werden:
Der Bauplan fr ein besseres Internet.
Teile dieses Inhalts sind 19982026 von einzelnen mozilla.org-Mitwirkenden. Inhalte sind verfgbar unter einer Creative-Commons-Lizenz.
| Web Proxy Viewer | New URL | Original Page |