TextDecoder

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since January 2020.

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 TextDecoder zurück.

Instanz-Eigenschaften

Die TextDecoder-Schnittstelle erbt keine Eigenschaften.

TextDecoder.encoding Schreibgeschützt

Ein String, der den Namen des Zeichencodierungssystems enthält, das dieser TextDecoder verwenden wird.

TextDecoder.fatal Schreibgeschützt

Ein boolescher Wert, der angibt, ob der Fehlermodus fatal ist.

TextDecoder.ignoreBOM Schreibgeschü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.

html
<button id="decode">Decode</button>
<button id="reset">Reset</button>
<div id="output"></div>
js
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.

html
<button id="decode">Decode</button>
<button id="reset">Reset</button>
<div id="decoded"></div>
js
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

Specification
Encoding
# interface-textdecoder

Browser-Kompatibilität

Siehe auch

  • Die TextEncoder-Schnittstelle, die die umgekehrte Operation beschreibt.