InternalError

Non standard: Cette fonctionnalité n'est ni standard, ni en voie de standardisation. Ne l'utilisez pas pour des sites accessibles sur le Web : elle ne fonctionnera pas pour tout utilisateur. Il peut également y avoir d'importantes incompatibilités entre les implémentations et son comportement peut être modifié dans le futur.

L'objet InternalError indique qu'une erreur interne liée au moteur JavaScript s'est produite. De telles erreurs se produisent généralement au dépassement d'un seuil, par exemple :

  • « trop de cas pour le switch » ;
  • « trop de parenthèses dans l'expression rationnelle » ;
  • « initialisateur de tableau trop grand » ;
  • « trop de niveaux de récursion ».

Constructeur

InternalError()

Crée un nouvel objet InternalError.

Propriétés des instances

InternalError.prototype.message

Message d'erreur, hérité depuis Error.

InternalError.prototype.name

Nom d'erreur, hérité depuis Error.

InternalError.prototype.fileName

Le chemin du fichier qui a déclenché cette erreur, hérité depuis Error.

InternalError.prototype.lineNumber

Le numéro de la ligne du fichier qui a déclenché cette erreur, hérité depuis Error.

InternalError.prototype.columnNumber

Le numéro de colonne de la ligne du fichier qui a déclenché cette erreur, hérité depuis Error.

InternalError.prototype.stack

La pile d'appels, héritée depuis Error.

Exemples

Trop de niveau de récursion

Cette fonction récursive s'appelle 10 fois, comme indiquée par la condition d'arrêt.

js
function boucle(x) {
  if (x >= 10) {
    // "x >= 10" représente la condition d'arrêt
    return;
  }
  // faire des trucs
  boucle(x + 1); // l'appel récursif
}
boucle(0);

En changeant cette condition avec une valeur extrêmement grande, cela ne fonctionnera plus :

js
function boucle(x) {
  if (x >= 1000000000000) {
    return;
  }
  // faire des trucs
  boucle(x + 1);
}
boucle(0);

// InternalError: too much recursion

Pour plus d'informations, voir la page sur InternalError: too much recursion.

Spécifications

Cet objet ne fait partie d'aucune spécification.

Compatibilité des navigateurs

Report problems with this compatibility data on GitHub
desktopmobileserver
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
Deno
Node.js
InternalError
Non-standard
InternalError() constructor
Non-standard

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support
No support
No support
Non-standard. Check cross-browser support before using.

Voir aussi