ArrayBuffer

L'objet ArrayBuffer est utilisé afin de représenter un tampon (buffer) de données binaires de longueur fixe de façon générique.

Il s'agit d'un tableau d'octets. Il n'est pas possible de manipuler directement le contenu d'un ArrayBuffer, la manipulation se fait de façon indirecte en créant un tableau typé ou un objet DataView qui permet de représenter le tampon dans un format donné qui permet de lire/écrire des contenus dans le tampon de mémoire.

Le constructeur ArrayBuffer() permet de créer un nouvel objet ArrayBuffer dont la longueur, en octets, est fournie par l'argument. Il est aussi possible d'obtenir un tableau typé à partir de données existantes, par exemple depuis une chaîne en Base64 ou depuis un fichier local.

Constructeur

ArrayBuffer()

Crée un nouvel objet ArrayBuffer.

Propriétés statiques

get ArrayBuffer[@@species]

La fonction de construction utilisée pour créer des objets dérivés.

Méthodes statiques

ArrayBuffer.isView(arg)

Renvoie true si arg est une des vues sur le tableau typé sous la forme d'un objet de tableau typé ou DataView et false sinon.

Propriétés des instances

ArrayBuffer.prototype.byteLength

La taille exprimée en octets, et en lecture seule, de l'objet ArrayBuffer. Elle est établie à la construction du tableau et ne peut pas être changée.

Méthodes des instances

ArrayBuffer.prototype.slice()

Renvoie un nouvel objet ArrayBuffer dont le contenu est une copie des octets de l'objet ArrayBuffer courant entre l'indice de début (inclus) et l'indice de fin (exclus), passés en argument. Si les valeurs fournies pour l'indice de début ou de fin sont négatives, elles expriment un indice compté depuis la fin du tableau (plutôt que depuis le début).

Exemples

Créer un objet ArrayBuffer

Dans cet exemple, on crée un tampon de mémoire sur 8 octets avec une vue Int32Array qui porte sur le tampon :

js
const buffer = new ArrayBuffer(8);
const view = new Int32Array(buffer);

Spécifications

Specification
ECMAScript Language Specification
# sec-arraybuffer-objects

Compatibilité des navigateurs

BCD tables only load in the browser

Voir aussi