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.LinkError() permet de créer un nouvel objet WebAssembly LinkError qui indique qu'une erreur s'est produite lors de l'instanciation du module (en plus des trappes provenant de la fonction initiale).

Syntaxe

new WebAssembly.LinkError(message, nomFichier, numeroLigne)

Paramètres

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

Propriétés

Le constructeur LinkError ne contient pas de propriétés qui lui soient propres. Il hérite cependant de certaines propriétés via sa chaîne de prototypes.

WebAssembly.LinkError.prototype.constructor
Cette propriété est la fonction qui permet de créer le prototype de l'instance.
WebAssembly.LinkError.prototype.message
Le message d'erreur. Bien qu'ECMA-262 indique que l'objet doive fournir sa propre propriété message, dans SpiderMonkey, celle-ci est héritée depuis Error.prototype.message.
WebAssembly.LinkError.prototype.name
Le nom de l'erreur. Cette propriété est héritée via Error.
WebAssembly.LinkError.prototype.fileName
Le chemin du fichier qui a entraîné l'erreur. Cette propriété est héritée via Error.
WebAssembly.LinkError.prototype.lineNumber
Le numéro de ligne dans le fichier qui a entraîné l'erreur. Cette propriété est héritée via Error.
WebAssembly.LinkError.prototype.columnNumber
Le numéro de la colonne dans la ligne du fichier qui a entraîné l'erreur. Cette propriété est héritée via Error.
WebAssembly.LinkError.prototype.stack
La pile d'appels à l'origine de l'erreur. Cette propriété est héritée depuis Error.

Méthodes

Le constructeur LinkError ne contient pas de méthodes qui lui soient propres. Il hérite toutefois de méthodes grâce à sa chaîne de prototypes.

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

Exemples

Dans le fragment de code qui suit, on crée un nouvelle instance de LinkError puis on imprime les détails dans la console :

try {
  throw new WebAssembly.LinkError('Coucou', 'unFichier', 10);
} catch (e) {
  console.log(e instanceof LinkError); // true
  console.log(e.message);                 // "Coucou"
  console.log(e.name);                    // "LinkError"
  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 initiale pour WebAssembly.
ECMAScript Latest Draft (ECMA-262)
La définition de 'NativeError' dans cette spécification.
Standard évolutif Définition des types standards NativeError.

Compatibilité des navigateurs

FonctionnalitéChromeEdgeFirefoxInternet ExplorerOperaSafari
Support simple5716522 Non4411
FonctionnalitéAndroidChrome for AndroidEdge mobileFirefox for AndroidIE mobileOpera AndroidiOS Safari
Support simple5757 (Oui)1522 Non ?11

1. , this feature is behind the Experimental JavaScript Features preference.

2. Disabled in the 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,