WebAssembly.RuntimeError()

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.

Le constructeur WebAssembly.RuntimeError() permet de créer un nouvel objet WebAssembly RuntimeError. C'est ce type d'exception qui est déclenchée lorsque WebAssembly définit une trappe.

Syntaxe

new WebAssembly.RuntimeError(message, nomFichier, numeroLigne)

Paramètres

message Facultatif
Une description, compréhensible par un humain, de l'erreur qui s'est produite.
fileName Facultatif
Le nom du fichier qui contient le code à l'origine de l'exception.
lineNumber Facultatif
Le numéro de la ligne de code à l'origine de l'exception.

Propriétés

Le constructeur RuntimeError ne contient aucune propriété qui lui soit propre. En revanche, il hérite de certaines propriétés grâce à sa chaîne de prototypes.

WebAssembly.RuntimeError.prototype.constructor
La fonction qui a créé le prototype de l'instance.
WebAssembly.RuntimeError.prototype.message
Le message qui décrit l'erreur. Bien qu'ECMA-262 indique que chaque instance doit fournir sa propre propriété message, dans  SpiderMonkey, elle est héritée depuis Error.prototype.message.
WebAssembly.RuntimeError.prototype.name
Le nom de l'erreur. Cette propriété est héritée depuis Error.
WebAssembly.RuntimeError.prototype.fileName
Le chemin du fichier à l'origine de l'erreur. Cette propriété est héritée depuis Error.
WebAssembly.RuntimeError.prototype.lineNumber
Le numéro de la ligne à l'origine de l'erreur. Cette propriété est héritée depuis Error.
WebAssembly.RuntimeError.prototype.columnNumber
Le numéro de la colonne dans la ligne qui est à l'origine de l'erreur. Cette propriété est héritée depuis Error.
WebAssembly.RuntimeError.prototype.stack
La pile d'appels à l'origine de l'erreur. Cette propriété est héritée depuis Error.

Méthodes

Le constructeur RuntimeError ne contient aucune méthode qui lui soit propre. En revanche, il hérite de certaines méthodes grâce à sa chaîne de prototypes.

WebAssembly.RuntimeError.prototype.toSource()
Cette méthode renvoie un code qui, évalué, entraînerait la même erreur. Elle est héritée via Error.
WebAssembly.RuntimeError.prototype.toString()
Cette méthode renvoie une chaîne de caractères qui représente l'objet Error. Elle est héritée via Error.

Exemples

Dans le fragment de code qui suit, on crée une instance de RuntimeError et on imprime les détails de cette erreur dans la console :

try {
  throw new WebAssembly.RuntimeError('Coucou', 'unFichier', 10);
} catch (e) {
  console.log(e instanceof RuntimeError); // true
  console.log(e.message);                 // "Coucou"
  console.log(e.name);                    // "RuntimeError"
  console.log(e.fileName);                // "unFichier"
  console.log(e.lineNumber);              // 10
  console.log(e.columnNumber);            // 0
  console.log(e.stack);                   // renvoie la pile d'appels
                                           // à l'origine de l'erreur
}

Spécifications

Spécification État Commentaires
Web Assembly JavaScript API
La définition de 'WebAssembly constructors' dans cette spécification.
Projet Brouillon de définition initial pour WebAssembly.
ECMAScript Latest Draft (ECMA-262)
La définition de 'NativeError' dans cette spécification.
Projet Définition des types standards NativeError.

Compatibilité des navigateurs

Fonctionnalité Chrome Edge Firefox (Gecko) Internet Explorer Opera Safari (WebKit)
Support simple 57 Pas de support 52 (52)[1] Pas de support (Oui) Pas de support
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 Pas de support

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

Voir aussi

Étiquettes et contributeurs liés au document

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