MDN wants to learn about developers like you: https://qsurvey.mozilla.com/s3/MDN-dev-survey

Cette fonction est expérimentale
Puisque cette fonction est toujours en développement dans certains navigateurs, veuillez consulter le tableau de compatibilité pour les préfixes à utiliser selon les navigateurs.
Il convient de noter qu'une fonctionnalité expérimentale peut voir sa syntaxe ou son comportement modifié dans le futur en fonction des évolutions de la spécification.

La fonction WebAssembly.validate() permet de valider un tableau typé de bytecode WebAssembly et renvoie un booléen qui indique si le contenu du tableau forme un module WebAssembly valide (true) ou non (false).

Syntaxe

WebAssembly.validate(bufferSource);

Paramètres

bufferSource
Un tableau typé ou un ArrayBuffer qui contient le bytecode du module qu'on souhaite valider.

Valeur de retour

Un booléen qui indique si la source est un code WebAssembly valide (true) ou non (false).

Exceptions

Si la valeur passée en argument n'est pas un tableau typé ou un ArrayBuffer, une exception TypeError sera levée.

Exemples

Dans l'exemple suivant, (cf. le fichier validate.html du code source, ainsi que l'exemple live), on récupère un module .wasm et on le convertit en un tableau typé. Ensuite, on appelle la méthode validate() afin de vérifier si le module est valide.

fetch('simple.wasm').then(response =>
  response.arrayBuffer()
).then(function(bytes) {
  var valid = WebAssembly.validate(bytes);
  console.log("Les octets forment un module "
    + (valid ? "" : "in") + "valide.");
});

Spécifications

Spécification État Commentaires
Web Assembly JavaScript API
La définition de 'validate()' dans cette spécification.
Projet Brouillon de définition initiale pour WebAssembly.

Compatibilité des navigateurs

Fonctionnalité Chrome Edge Firefox (Gecko) Internet Explorer Opera Safari (WebKit)
Support simple 57 15[2] 52 (52)[1] Pas de support 44 11
Fonctionnalité Chrome pour Android Webview Android Edge Mobile Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Support simple 57 57 Pas de support 52.0 (52)[1] Pas de support Pas de support 11

[1] WebAssembly est activé dans Firefox 52+ mais est désactivé pour Firefox 52 Extended Support Release (ESR).

[2] Actuellement pris en charge via la préférence Fonctionnalités JavaScript expérimentales, voir ce billet (en anglais) pour plus d'informations.

Voir aussi

Étiquettes et contributeurs liés au document

 Contributeurs à cette page : SphinxKnight
 Dernière mise à jour par : SphinxKnight,