Kodierung
Unicode Escape
Kodierung und Dekodierung von Unicode-Sequenzen — Zeichen im Format \uXXXX und zurück.
Eine Unicode-Escape-Sequenz (\uXXXX) schreibt ein Zeichen über seinen Codepunkt statt über das Zeichen selbst — so kann ein String-Literal im Code jedes Unicode-Zeichen enthalten, während die Quelldatei selbst reines ASCII bleibt.
So verwendest du es
- Kodieren: Füge Text ein — jedes Nicht-ASCII-Zeichen wird durch die passende \uXXXX-Sequenz ersetzt.
- Dekodieren: Füge einen String mit \uXXXX-Sequenzen ein, um reinen, lesbaren Text zurückzuerhalten.
- Zeichen außerhalb der Basic Multilingual Plane (die meisten Emojis) werden als Surrogatpaar aus zwei Sequenzen kodiert.
Typische Anwendungsfälle
- JSON- oder JS-Code lesen, bei dem Nicht-ASCII-Text zur Kompatibilität vorab in \uXXXX escaped wurde.
- Ein Zeichen, das nicht auf der Tastatur liegt, über einen expliziten Unicode-Escape in Code einfügen.
- Debuggen, warum ein String mit einem Emoji als zwei seltsame Zeichen erscheint — ein Surrogatpaar erkennen.
Was du wissen solltest
\uXXXX kodiert genau eine 16-Bit-UTF-16-Einheit, nicht ein sichtbares Zeichen — Zeichen außerhalb der Basic Multilingual Plane (die meisten Emojis) brauchen zwei solche Sequenzen zusammen (ein Surrogatpaar).
JSON verlangt Escaping nur für Steuerzeichen und einige Sonderzeichen — jedes Zeichen als \uXXXX zu escapen ist nicht erforderlich, aber gültig.
Artikel zu diesem Tool: Unicode Escape: was \uXXXX-Sequenzen bedeuten
Häufig gestellte Fragen
Was bedeutet das Format \uXXXX?
Es ist eine Escape-Sequenz, die einen Unicode-Codepunkt als vier hexadezimale Ziffern darstellt, etwa \u00e4 für ä. Sie wird in JavaScript, JSON und vielen anderen Sprachen verwendet, um Zeichen darzustellen, die nicht direkt im Quelltext getippt werden können.
Warum werden manche Zeichen wie Emojis als zwei \uXXXX-Sequenzen kodiert?
Zeichen außerhalb der Basic Multilingual Plane, etwa die meisten Emojis, passen nicht in einen einzelnen 16-Bit-Codepunkt und werden deshalb als Surrogatpaar aus zwei \uXXXX-Sequenzen dargestellt.
Wird der eingegebene Text irgendwohin übertragen?
Nein, die Kodierung und Dekodierung geschieht vollständig im Browser, ohne dass Daten an einen Server gesendet werden.
Was passiert, wenn ein Surrogatpaar mittendurch getrennt wird?
Es entsteht eine ungültige „verwaiste" Zeichen-Einheit – ein einzelner Code ohne seinen Partner. Die meisten Parser lehnen einen solchen String entweder mit einer Fehlermeldung ab oder zeigen das Ersatzzeichen „�" an.
Lässt sich ein Emoji mit einem einzigen \uXXXX kodieren?
Nein, sofern das Emoji außerhalb der Basic Multilingual Plane liegt (was auf die meisten modernen Emojis zutrifft) – dafür ist immer ein Surrogatpaar aus zwei \uXXXX-Sequenzen nötig.