Uint8Array.fromHex()

Limited availability

This feature is not Baseline because it does not work in some of the most widely-used browsers.

Die statische Methode Uint8Array.fromHex() erstellt ein neues Uint8Array-Objekt aus einem Hexadezimal-String.

Diese Methode analysiert den String in ein Byte-Array. Um den String in eine einzelne Zahl zu konvertieren, verwenden Sie stattdessen die Funktion parseInt() mit dem radix auf 16 gesetzt.

Syntax

js
Uint8Array.fromHex(string)

Parameter

string

Ein Hexadezimal-String, der die Bytes zur Umwandlung in ein Uint8Array kodiert. Der String muss folgende Bedingungen erfüllen:

  • Eine gerade Anzahl von Zeichen enthalten, da zwei Zeichen ein Byte kodieren.
  • Nur Zeichen aus dem hexadezimalen Alphabet enthalten, das die Zeichen 0–9 und A–F (unabhängig von Groß- und Kleinschreibung) umfasst.
  • Keine Leerzeichen enthalten (im Gegensatz zu Uint8Array.prototype.setFromBase64()).

Rückgabewert

Ein neues Uint8Array-Objekt, das die decodierten Bytes des Hexadezimal-Strings enthält.

Ausnahmen

SyntaxError

Wird ausgelöst, wenn der Eingabestring Zeichen außerhalb des Hexadezimal-Alphabets enthält oder seine Länge ungerade ist.

TypeError

Wird ausgelöst, wenn der Eingabestring kein String ist.

Beispiele

Decodierung eines Hexadezimal-Strings

Dieses Beispiel decodiert einen Hexadezimal-String in ein Uint8Array.

js
const hexString = "cafed00d";
const bytes = Uint8Array.fromHex(hexString);
console.log(bytes); // Uint8Array [ 202, 254, 208, 13 ]

Auch Großbuchstaben werden unterstützt:

js
const hexString = "CAFEd00d";
const bytes = Uint8Array.fromHex(hexString);
console.log(bytes); // Uint8Array [ 202, 254, 208, 13 ]

Spezifikationen

Specification
Uint8Array to/from base64
# sec-uint8array.fromhex

Browser-Kompatibilität

Siehe auch