Читать книгу JavaScript – Das Handbuch für die Praxis - David Flanagan - Страница 25
2.5.1Unicode-Escape-Sequenzen
ОглавлениеEs gibt Hard- und Software, die nicht in der Lage sind, alle Unicode-Zeichen anzuzeigen, als Eingabe entgegenzunehmen oder korrekt zu verarbeiten. Um Programmierer und Systeme zu unterstützen, die ältere Technologien verwenden, definiert JavaScript Escape-Sequenzen. Mit ihnen können Unicode-Zeichen mithilfe von ASCII-Zeichen geschrieben werden. Diese Unicode-Escape-Sequenzen beginnen mit den beiden Zeichen \u, gefolgt von entweder genau vier Hexadezimalziffern (unter Verwendung der Groß- oder Kleinbuchstaben A bis F) oder einer bis sechs Hexadezimalziffern in geschweiften Klammern. Unicode-Escape-Sequenzen dürfen in JavaScript-String-Literalen, Literalen für reguläre Ausdrücke und Identifiern (aber nicht in spracheigenen Schlüsselwörtern) vorkommen. Die Unicode-Escape-Sequenz für das Zeichen »é« ist beispielsweise \u00E9. Hier sind drei verschiedene Möglichkeiten, einen Variablennamen zu schreiben, der dieses Zeichen enthält:
let café = 1; // Definieren Sie eine Variable mit einem Unicode-Zeichen.
caf\u00e9 // => 1; Zugriff auf die Variable mit einer Escape-Sequenz.
caf\u{E9} // => 1; Eine andere Form der gleichen Escape-Sequenz.
Frühe Versionen von JavaScript unterstützten nur vierstellige Escape-Sequenzen. Die Version mit geschweiften Klammern wurde in ES6 eingeführt, um Unicode-Codepoints wie z.B. Emojis, die mehr als 16 Bit benötigen, besser zu unterstützen:
console.log("\u{1F600}"); // Gibt ein Smiley-Emoji aus.
Unicode-Escape-Sequenzen können auch in Kommentaren vorkommen. Dort werden sie aber einfach als ASCII-Zeichen behandelt (und nicht als Unicode), da Kommentare beim Ausführen des Codes ignoriert werden.