RangeError
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
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