Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.
TextDecoder
Baseline
Weitgehend verfügbar
Diese Funktion ist gut etabliert und funktioniert auf vielen Geräten und in vielen Browserversionen. Sie ist seit Januar 2020 browserübergreifend verfügbar.
Hinweis: Diese Funktion ist in Web Workers verfügbar.
Die TextDecoder-Schnittstelle repräsentiert einen Decoder für eine spezifische Textkodierung, wie z.B. UTF-8, ISO-8859-2 oder GBK. Ein Decoder nimmt ein Byte-Array als Eingabe und gibt einen JavaScript-String zurück.
Konstruktor
TextDecoder()-
Erstellt und gibt einen neuen
TextDecoderzurück.
Instanz-Eigenschaften
Die TextDecoder-Schnittstelle erbt keine Eigenschaften.
TextDecoder.encodingSchreibgeschützt-
Ein String, der den Namen des Zeichencodierungssystems enthält, das dieser
TextDecoderverwenden wird. TextDecoder.fatalSchreibgeschützt-
Ein boolescher Wert, der angibt, ob der Fehlermodus fatal ist.
TextDecoder.ignoreBOMSchreibgeschützt-
Ein boolescher Wert, der angibt, ob die Byte-Order-Markierung ignoriert wird.
Instanz-Methoden
Die TextDecoder-Schnittstelle erbt keine Methoden.
TextDecoder.decode()-
Dekodiert die gegebenen Bytes in einen JavaScript-String und gibt ihn zurück.
Beispiele
>Dekodieren von UTF-8-Text
Dieses Beispiel zeigt, wie die UTF-8-Kodierung des Zeichens "𠮷" dekodiert wird.
<button id="decode">Decode</button>
<button id="reset">Reset</button>
<div id="output"></div>
div {
margin: 1rem 0;
}
const utf8decoder = new TextDecoder(); // default 'utf-8'
const encodedText = new Uint8Array([240, 160, 174, 183]);
const output = document.querySelector("#output");
const decodeButton = document.querySelector("#decode");
decodeButton.addEventListener("click", () => {
output.textContent = utf8decoder.decode(encodedText);
});
const resetButton = document.querySelector("#reset");
resetButton.addEventListener("click", () => {
window.location.reload();
});
Dekodieren von nicht-UTF8-Text
In diesem Beispiel dekodieren wir den russischen Text "Привет, мир!", was "Hallo, Welt." bedeutet. In unserem TextDecoder()-Konstruktor spezifizieren wir die Windows-1251-Zeichencodierung.
<button id="decode">Decode</button>
<button id="reset">Reset</button>
<div id="decoded"></div>
div {
margin: 1rem 0;
}
const win1251decoder = new TextDecoder("windows-1251");
const encodedText = new Uint8Array([
207, 240, 232, 226, 229, 242, 44, 32, 236, 232, 240, 33,
]);
const decoded = document.querySelector("#decoded");
const decodeButton = document.querySelector("#decode");
decodeButton.addEventListener("click", () => {
decoded.textContent = win1251decoder.decode(encodedText);
});
const resetButton = document.querySelector("#reset");
resetButton.addEventListener("click", () => {
window.location.reload();
});
Spezifikationen
| Spezifikation |
|---|
| Encoding> # interface-textdecoder> |
Browser-Kompatibilität
JavaScript aktivieren, um diese Browser-Kompatibilitätstabelle anzuzeigen.
Siehe auch
- Die
TextEncoder-Schnittstelle, die die umgekehrte Operation beschreibt.