RangeError
L'objet RangeError
permet d'indiquer une erreur lorsqu'une valeur fournie n'appartient pas à l'intervalle ou à l'ensemble de valeurs autorisées.
Description
Une exception RangeError
est levée lorsqu'une valeur est passée comme argument à une fonction qui n'accepte pas de valeurs dans cet intervalle.
Par exemple, cela peut être le cas quand :
- on passe une valeur qui n'est pas une des valeurs autorisées pour
String.prototype.normalize()
, ou - on souhaite créer un tableau avec une longueur illégale via
Array
ou - lorsqu'on passe des valeurs incorrectes aux méthodes
Number.toExponential()
,Number.toFixed()
ouNumber.toPrecision()
.
Constructeur
RangeError()
-
Crée un nouvel objet
RangeError
.
Propriétés des instances
RangeError.prototype.message
-
Un message d'erreur. Bien qu'ECMA-262 spécifie que
RangeError
devrait fournir sa propre propriétémessage
, pour SpiderMonkey, celle-ci est héritée deError.prototype.message
. RangeError.prototype.name
-
Le nom d'erreur. Hérité de
Error
. RangeError.prototype.fileName
-
Le chemin vers le fichier qui a déclenché cette erreur. Héritée de
Error
. RangeError.prototype.lineNumber
-
Le numéro de la ligne dans le fichier qui a déclenché cette erreur. Héritée de
Error
. RangeError.prototype.columnNumber
-
Le numéro de la colonne dans la ligne du fichier qui a déclenché cette erreur. Héritée de
Error
. RangeError.prototype.stack
-
La trace de la pile d'appel. Héritée de
Error
.
Exemples
Utiliser RangeError
const MIN = 200;
const MAX = 300;
function verifier(num) {
if (num < MIN || num > MAX) {
throw new RangeError(
"Le paramètre doit être compris entre " + MIN + " et " + MAX,
);
}
}
try {
verifier(500);
} catch (e) {
if (e instanceof RangeError) {
// On gère ce qui se passe en cas d'erreur
}
}
Utiliser RangeError
avec des valeurs non-numériques
function verifier(valeur) {
if (["pomme", "banane", "carotte"].includes(valeur) === false) {
throw new RangeError(
"L'argument n'est pas un fruit parmi pomme / banane ou carotte.",
);
}
}
try {
verifier("chou");
} catch (erreur) {
if (erreur instanceof RangeError) {
//On gère ce qui se passe en cas d'erreur
}
}
Spécifications
Specification |
---|
ECMAScript Language Specification # sec-native-error-types-used-in-this-standard-rangeerror |
Compatibilité des navigateurs
BCD tables only load in the browser