JavaScript für Ungeduldige. Cay Horstmann
Чтение книги онлайн.
Читать онлайн книгу JavaScript für Ungeduldige - Cay Horstmann страница 8
Abb. 1–2 Ausführung von JavaScript-Code in der Entwicklerkonsole
Eine dritte Möglichkeit besteht darin, Node.js von http://node.js.org zu installieren, ein Terminalfenster zu öffnen und darin das Programm node auszuführen. Dadurch wird eine JavaScript-»REPL« gestartet (Read-Eval-Print Loop, also etwa »Lese-, Ausführungs- und Ausgabeschleife«). Darin können Sie Befehle eingeben und sich die Ergebnisse anzeigen lassen (siehe Abb. 1–3).
Abb. 1–3 Ausführung von JavaScript-Code in der Node.js-REPL
Wenn Sie längere Codefolgen ausführen wollen, schreiben Sie die Anweisungen in eine Datei. Für Ausgaben verwenden Sie dabei die Methode console.log. Beispielsweise können Sie die folgenden Anweisungen in eine Datei aufnehmen, die Sie first.js nennen:
let a = 6
let b = 7
console.log(a * b)
Führen Sie anschließend den folgenden Befehl aus:
node first.js
Im Terminal wird nun die Ausgabe des Befehls console.log angezeigt.
Sie können auch eine Entwicklungsumgebung wie Visual Studio Code, Eclipse, Komodo IDE oder WebStorm verwenden. Darin können Sie, wie in Abbildung 1–4 gezeigt, JavaScript-Code bearbeiten und ausführen:
Abb. 1–4 Ausführung von JavaScript-Code in einer Entwicklungsumgebung
1.2Typen und der Operator typeof
Werte in JavaScript sind jeweils von einem der folgenden Typen:
eine Zahl
einer der booleschen Werte false oder true
einer der besonderen Werte null oder undefined
ein String
ein Symbol
ein Objekt
Die Typen, die keine Objekte sind, werden zusammengenommen als primitive Typen bezeichnet.
Mehr über diese Typen erfahren Sie in den folgenden Abschnitten. Die einzige Ausnahme bilden die Symbole, die erst in Kapitel 11 behandelt werden.
Den Typ eines gegebenen Werts können Sie mit dem Operator typeof herausfinden, der einen der Strings 'number', 'boolean', 'undefined', 'object', 'string' oder 'symbol' oder einen von wenigen weiteren möglichen Strings zurückgibt. Beispielsweise ergibt typeof 42 den String 'number'.
Hinweis
Obwohl der Typ null nicht identisch mit dem Typ object ist, ergibt typeof null den String 'object'. Das ist leider historisch so gewachsen.
Vorsicht
Ähnlich wie in Java können Sie in JavaScript Objekte als Wrapper für Zahlen, boolesche Werte und Strings konstruieren. Beispielsweise werden sowohl typeof new Number(42) als auch typeof new String('Hello') zu 'object' ausgewertet. Allerdings gibt es in JavaScript keinen sinnvollen Grund dafür, solche Wrapper-Instanzen zu erstellen. Da sie eher für Verwirrung sorgen, ist ihre Verwendung in vielen Programmierstandards untersagt.
1.3Kommentare
In JavaScript können Sie zwei verschiedene Arten von Kommentaren einfügen. Einzeilige Kommentare beginnen mit // und laufen bis zum Ende der Zeile:
// Einzeiliger Kommentar
Dagegen können mit /* und */ abgegrenzte Kommentare mehrere Zeilen umspannen:
/*
mehrzeiliger
Kommentar
*/
In diesem Buch verwende ich eine Serifenschrift, um die Kommentare in Listings deutlicher hervorzuheben. In Ihrem Texteditor werden die Kommentare wahrscheinlich farbig gekennzeichnet sein.
Hinweis
Anders als Java bietet JavaScript keine besondere Formatierung für Kommentare zur Dokumentation. Für diesen Zweck können Sie jedoch Drittanbieterwerkzeuge wie JSDoc (http://usejsdoc.org
) nutzen.
1.4Variablendeklarationen
Mit der Anweisung let können Sie einen Wert in einer Variablen speichern:
let counter = 0
In JavaScript haben Variable keinen festen Typ. Daher können Sie in jeder Variablen Werte beliebigen Typs speichern. Beispielsweise ist es zulässig, den Inhalt von counter durch einen String zu ersetzen:
counter = 'zero'
Während es wohl kaum jemals sinnvoll sein dürfte, so etwas zu tun, erleichtern untypisierte Variablen es Ihnen in