Uint8Array
Baseline Widely available *
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
* Some parts of this feature may have varying levels of support.
Das Uint8Array
typisierte Array repräsentiert ein Array von 8-Bit-Integern ohne Vorzeichen. Der Inhalt wird auf 0
initialisiert, es sei denn, es werden explizit Initialisierungsdaten bereitgestellt. Sobald das Array erstellt wurde, können Sie auf die Elemente im Array über die Methoden des Objekts oder durch die Standard-Array-Indizierungssyntax (also durch Klammernotation) zugreifen.
Uint8Array
ist eine Unterklasse der versteckten TypedArray
Klasse.
Beschreibung
Uint8Array
ist derzeit die einzige TypedArray
-Unterklasse, die zusätzliche Methoden im Vergleich zu anderen typisierten Arrays hat. Aufgrund seiner Natur als generisches Byte-Array eignet es sich am besten für die Arbeit mit beliebigen Binärdaten. Es unterstützt zwei Methodensätze zur Erstellung, Serialisierung und Modifikation von Uint8Array
-Daten zu/von Hex-Strings und Base64-Strings.
Uint8Array.fromBase64()
,Uint8Array.prototype.toBase64()
undUint8Array.prototype.setFromBase64()
zur Arbeit mit base64-Strings, bei denen 3 Bytes durch 4 Zeichen kodiert werden, die entweder 0–9, A–Z, a–z, "+", und "/" sind (oder "-" und "_", wenn URL-sicheres Base64 verwendet wird).Uint8Array.fromHex()
,Uint8Array.prototype.toHex()
undUint8Array.prototype.setFromHex()
zur Arbeit mit Hex-Strings, bei denen jedes Byte durch zwei Zeichen kodiert wird, die entweder 0–9 oder A–F (groß- und kleinschreibung) sind.
Konstruktor
Uint8Array()
-
Erstellt ein neues
Uint8Array
Objekt.
Statische Eigenschaften
Erbt auch statische Eigenschaften von der übergeordneten TypedArray
.
Uint8Array.BYTES_PER_ELEMENT
-
Gibt einen Zahlenwert der Elementgröße zurück.
1
im Fall vonUint8Array
.
Statische Methoden
Erbt statische Methoden von der übergeordneten TypedArray
.
Uint8Array.fromBase64()
-
Erstellt ein neues
Uint8Array
Objekt aus einem Base64-kodierten String. Uint8Array.fromHex()
-
Erstellt ein neues
Uint8Array
Objekt aus einem Hex-kodierten String.
Instanz-Eigenschaften
Erbt auch Instanz-Eigenschaften von der übergeordneten TypedArray
.
Diese Eigenschaften sind auf Uint8Array.prototype
definiert und werden von allen Uint8Array
-Instanzen geteilt.
Uint8Array.prototype.BYTES_PER_ELEMENT
-
Gibt einen Zahlenwert der Elementgröße zurück.
1
im Fall einesUint8Array
. Uint8Array.prototype.constructor
-
Die Konstruktorfunktion, die das Instanzobjekt erstellt hat. Für
Uint8Array
-Instanzen ist der Ausgangswert derUint8Array
Konstruktor.
Instanz-Methoden
Erbt Instanz-Methoden von der übergeordneten TypedArray
.
Uint8Array.prototype.setFromBase64()
-
Befüllt dieses
Uint8Array
-Objekt mit Bytes aus einem Base64-kodierten String und gibt ein Objekt zurück, das angibt, wie viele Bytes gelesen und geschrieben wurden. Uint8Array.prototype.setFromHex()
-
Befüllt dieses
Uint8Array
-Objekt mit Bytes aus einem Hex-kodierten String und gibt ein Objekt zurück, das angibt, wie viele Bytes gelesen und geschrieben wurden. Uint8Array.prototype.toBase64()
-
Gibt einen Base64-kodierten String basierend auf den Daten in diesem
Uint8Array
-Objekt zurück. Uint8Array.prototype.toHex()
-
Gibt einen Hex-kodierten String basierend auf den Daten in diesem
Uint8Array
-Objekt zurück.
Beispiele
Verschiedene Möglichkeiten, ein Uint8Array zu erstellen
// From a length
const uint8 = new Uint8Array(2);
uint8[0] = 42;
console.log(uint8[0]); // 42
console.log(uint8.length); // 2
console.log(uint8.BYTES_PER_ELEMENT); // 1
// From an array
const x = new Uint8Array([21, 31]);
console.log(x[1]); // 31
// From another TypedArray
const y = new Uint8Array(x);
console.log(y[0]); // 21
// From an ArrayBuffer
const buffer = new ArrayBuffer(8);
const z = new Uint8Array(buffer, 1, 4);
console.log(z.byteOffset); // 1
// From an iterable
const iterable = (function* () {
yield* [1, 2, 3];
})();
const uint8FromIterable = new Uint8Array(iterable);
console.log(uint8FromIterable);
// Uint8Array [1, 2, 3]
Spezifikationen
Specification |
---|
ECMAScript Language Specification # table-49 |
Browser-Kompatibilität
BCD tables only load in the browser