Text schreiben – Programmieren lernen mit JavaScript – Thytos
Nächstes Video startet in 3 Sekunden.
Programmieren lernen mit JavaScript

Text schreiben

Wörter und Tex­te müs­sen im Pro­gramm­code de­fi­niert wer­den. In Ja­va­Script geht das über­ra­schend einfach.

Laut Klischee arbeiten Programmierer mit Nullen und Einsen und vollbringen damit magische Dinge. Die Realität ist jedoch anders. Programmierer schreiben Texte, lesbare Anweisungen und Kontrollstrukturen.

Wird in die Konsole Text eingegeben und Enter gedrückt, versucht der Computer (bzw. genauer: Der Compiler) diesen Text auszuführen. Dafür geht er davon aus, dass der Text in einer bestimmten Programmiersprache geschrieben ist. Wenn das Eingegebene nicht dieser Sprache entspricht, kann es nicht interpretiert werden und die Ausführung wird mit einer Fehlermeldung abgebrochen.

Wie verhält es sich aber mit Text, der gar nicht in dieser Programmiersprache steht? Wie kann dem Compiler mitgeteilt werden, dass bestimmte Wörter und Sätze kein Programmcode sind?

Selbst ausprobieren

Öffnet die Webkonsole in eurem Browser, gebt folgendes ein und drückt Enter:

"Hallo Welt"

Indem der Text zwischen Anführungszeichen steht, wird er als String interpretiert. String heißt auf Deutsch Kette oder auch Zeichenkette. Ein String ist eine Aneinanderreihung, eine Kette von beliebigen Zeichen. Deswegen können Strings Text in jeglicher Sprache enthalten, weil der Inhalt nicht als Programmcode interpretiert wird.

Für Strings in JavaScript können einfache (') und doppelte Anführungszeichen (") verwendet werden.

Wenn ihr das folgende Beispiel in eure Konsole eingebt und ausführt, wird es eine Fehlermeldung geben:

'Hier gibt's ein Problem!'

Die Konsole wirft den Fehler: "Uncaught SyntaxError: Unexpected identifier"

Findet ihr den Fehler?

Der Compiler liest den Text Zeichen für Zeichen und interpretiert ihn. Er erkennt: Das erste Zeichen ist ein Anführungszeichen, das bedeutet, die kommenden Zeichen bilden einen String. Zeichen für Zeichen rückt er vor, bis er zu der Stelle nach gibt gelangt. Hier steht ein weiteres Anführungszeichen. Als Menschen können wir erkennen: Das Anführungszeichen ist als Apostroph gemeint. Der Compiler erkennt das nicht und deutet das Zeichen als Ende des Strings. Alle Zeichen, die anschließend folgen, werden deswegen als Programmcode angesehen, was sie jedoch nicht sind. Das führt zu der Fehlermeldung.

Wie kann das Problem gelöst werden?

Es gibt verschiedene Möglichkeiten. Zum einen können Strings durch einfache und doppelte Anführungszeichen kenntlich gemacht werden. Die einfachen Anführungszeiten außen können durch doppelte ersetzt werden. Dadurch sucht der Compiler, der die Zeichen abgeht, nach dem nächsten doppelten Anführungszeichen als Ende des Strings und ignoriert das einfache Anführungszeichen in der Mitte.

"Hier gibt's kein Problem mehr!"

Zum anderen gibt es die Möglichkeit, einen Backslash vor das einfache Anführungszeichen zu setzen. Dadurch wird dem Compiler mitgeteilt, das das Zeichen, das auf den Backslash folgt, nicht in seiner eigentlichen Funktion interpretiert werden soll. In diesem Fall wird dem Compiler dadurch mitgeteilt, dass das Anführungszeichen, das als Apostroph gemeint ist, nicht als Ende des Strings interpretiert werden soll.
Dieses Vorgehen heißt Escaping. Der Backslash ist in JavaScript, der Programmiersprache, die wir hier nutzen, ein Escape-Character, zu deutsch: Ein Maskierungszeichen.

'Hier gibt\'s auch kein Problem!'