Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

WorkerGlobalScope: btoa()-Methode

Baseline
Weitgehend verfügbar

Diese Funktion ist gut etabliert und funktioniert auf vielen Geräten und in vielen Browserversionen. Sie ist seit Juli 2015 browserübergreifend verfügbar.

Hinweis: Diese Funktion ist nur in Web Workers verfügbar.

Die Methode btoa() der Schnittstelle WorkerGlobalScope erstellt aus einer binären Zeichenfolge eine Base64-codierte ASCII-Zeichenfolge. Dabei wird jedes Zeichen der Eingabe als ein Byte binärer Daten behandelt.

Mit dieser Methode können Sie Daten codieren, die andernfalls Kommunikationsprobleme verursachen könnten, sie übertragen und anschließend mit der Methode WorkerGlobalScope.atob() wieder decodieren. So können Sie beispielsweise Steuerzeichen wie die ASCII-Werte 0 bis 31 codieren.

Syntax

js
btoa(stringToEncode)

Parameter

stringToEncode

Die zu codierende binäre Zeichenfolge.

Rückgabewert

Eine ASCII-Zeichenfolge, die die Base64-Darstellung von stringToEncode enthält.

Ausnahmen

InvalidCharacterError DOMException

Die Zeichenfolge enthielt ein Zeichen, das nicht in ein einzelnes Byte passt. Weitere Informationen finden Sie unten unter „Unicode-Zeichenfolgen“.

Beispiele

js
const encodedData = self.btoa("Hello, world"); // encode a string
const decodedData = self.atob(encodedData); // decode the string

Unicode-Zeichenfolgen

Base64 erwartet binäre Daten als Eingabe. Bei JavaScript-Zeichenfolgen bedeutet dies, dass der Codepunkt jedes Zeichens nur ein Byte belegt. Wenn Sie btoa() eine Zeichenfolge übergeben, die Zeichen enthält, die mehr als ein Byte belegen, erhalten Sie daher einen Fehler: Eine solche Zeichenfolge gilt nicht als binäre Daten.

Weitere Informationen und mögliche Umgehungslösungen finden Sie unter Window.btoa().

Spezifikationen

Spezifikation
HTML
# dom-btoa-dev

Browser-Kompatibilität

Siehe auch