Constructeur DataView()
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.
Le constructeur DataView()
permet de construire des objets DataView
.
Exemple interactif
Syntaxe
new DataView(buffer);
new DataView(buffer, decalageOctets);
new DataView(buffer, decalageOctets, longueurOctets);
Paramètres
buffer
-
Un objet
ArrayBuffer
ouSharedArrayBuffer
existant à utiliser comme tampon de mémoire sur lequel portera la vue formée par le nouvel objetDataView
. decalageOctets
Facultatif-
Le décalage, exprimé en octets, du premier octet référencé par la vue par rapport au tampon de mémoire. Par défaut, la vue commence au premier octet du tampon de mémoire.
longueurOctets
Facultatif-
Le nombre d'éléments dans le tableau des octets de la vue. Par défaut, la longueur de la vue correspondra à celle du tampon.
Valeur de retour
Un nouvel objet DataView
qui fournit une vue sur le tampon de mémoire passé en argument.
Cet objet peut être vu comme un interpréteur du tableau d'octets fourni par le tampon de mémoire. Il permet de convertir les nombres afin qu'ils soient correctement écrits ou lus dans le tampon (ce qui inclut la gestion des entiers, la conversion des flottants, le boutisme, ainsi que les autres détails quant à la représentation binaire des nombres).
Exceptions
RangeError
-
Levée si les valeurs des paramètres
decalageOctets
oulongueurOctets
entraînent un dépassement de la vue après la fin du tampon.Ainsi, si le tampon de mémoire mesure 16 octets, que la valeur fournie pour
decalageOctets
est 8, et que celle fournie pourlongueurOctets
est 10, cette exception sera déclenchée, car la vue résultante dépassera de deux octets la taille du tampon.
Exemples
Utiliser DataView()
const buffer = new ArrayBuffer(16);
const view = new DataView(buffer, 0);
view.setInt16(1, 42);
view.getInt16(1); // 42
Spécifications
Specification |
---|
ECMAScript® 2025 Language Specification # sec-dataview-constructor |
Compatibilité des navigateurs
BCD tables only load in the browser