Cette page a été traduite à partir de l'anglais par la communauté.Vous pouvez contribuer en rejoignant la communauté francophone sur MDN Web Docs.
Constructeur DataView()
Baseline Widely available
Cette fonctionnalité est bien établie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis juillet 2015.
Le constructeurDataView() permet de construire des objetsDataView.
Dans cet article
Exemple interactif
// Create an ArrayBuffer with a size in bytesconst buffer = new ArrayBuffer(16);// Create a couple of viewsconst view1 = new DataView(buffer);const view2 = new DataView(buffer, 12, 4); // From byte 12 for the next 4 bytesview1.setInt8(12, 42); // Put 42 in slot 12console.log(view2.getInt8(0));// Expected output: 42Syntaxe
new DataView(buffer);new DataView(buffer, decalageOctets);new DataView(buffer, decalageOctets, longueurOctets);Paramètres
bufferUn objet
ArrayBufferouSharedArrayBufferexistant à utiliser comme tampon de mémoire sur lequel portera la vue formée par le nouvel objetDataView.decalageOctetsFacultatifLe 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.
longueurOctetsFacultatifLe 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 objetDataView 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
RangeErrorLevée si les valeurs des paramètres
decalageOctetsoulongueurOctetsentraî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
decalageOctetsest 8, et que celle fournie pourlongueurOctetsest 10, cette exception sera déclenchée, car la vue résultante dépassera de deux octets la taille du tampon.
Exemples
>UtiliserDataView()
const buffer = new ArrayBuffer(16);const view = new DataView(buffer, 0);view.setInt16(1, 42);view.getInt16(1); // 42Spécifications
| Specification |
|---|
| ECMAScript® 2026 Language Specification> # sec-dataview-constructor> |