--- title: RangeError slug: Web/JavaScript/Reference/Global_Objects/RangeError tags: - Error - JavaScript - RangeError - Reference translation_of: Web/JavaScript/Reference/Global_Objects/RangeError original_slug: Web/JavaScript/Reference/Objets_globaux/RangeError ---
{{JSRef}}

L'objet RangeError permet d'indiquer une erreur lorsqu'une valeur fournie n'appartient pas à l'intervalle autorisé.

Syntaxe

new RangeError([message[, nomFichier[, numLigne]]])

Paramètres

message
Paramètre optionnel. Une description lisible (humainement) de l'erreur.
nomFichier {{non-standard_inline}}
Paramètre optionnel. Le nom du fichier contenant le code à l'origine de cette exception.
numLigne {{non-standard_inline}}
Paramètre optionnel. Le numéro de la ligne du code à l'origine de cette exception.

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 souhaite créer un tableau avec une longueur illégale via {{jsxref("Array")}} ou lorsqu'on passe des valeurs incorrectes aux méthodes {{jsxref("Number.toExponential()")}}, {{jsxref("Number.toFixed()")}} ou {{jsxref("Number.toPrecision()")}}. Cette exception n'est pas limitée aux problèmes d'intervalles numériques et peuvent également se produire lorsqu'on passe une valeur non autorisée à {{jsxref("String.prototype.normalize()")}}.

Propriétés

{{jsxref("RangeError.prototype")}}
Cette propriété permet d'ajouter des propriétés à toutes les instances de RangeError.

Méthodes

L'objet global RangeError ne contient pas de méthodes propres mais héritent de certaines méthodes via la chaîne de prototypes.

Instances de RangeError

Propriétés

{{ page('/fr/docs/Web/JavaScript/Reference/Objets_globaux/Object/RangeError/prototype','Properties') }}

Méthodes

{{ page('/fr/docs/Web/JavaScript/Reference/Objets_globaux/Object/RangeError/prototype','Methods') }}

Exemples

Utiliser RangeError

var MIN = 200;
var MAX = 300;
var vérifier = function( num ) {
  if( num < MIN || num > MAX ) {
    throw new RangeError( "Le paramètre doit être compris entre " + MIN + " et " + MAX );
  }
};

try {
  vérifier(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

Spécification État Commentaires
{{SpecName('ES3')}} {{Spec2('ES3')}} Définition initiale.
{{SpecName('ES5.1', '#sec-15.11.6.2', 'RangeError')}} {{Spec2('ES5.1')}}  
{{SpecName('ES6', '#sec-native-error-types-used-in-this-standard-rangeerror', 'RangeError')}} {{Spec2('ES6')}}  
{{SpecName('ESDraft', '#sec-native-error-types-used-in-this-standard-rangeerror', 'RangeError')}} {{Spec2('ESDraft')}}  

Compatibilité des navigateurs

{{Compat("javascript.builtins.RangeError")}}

Voir aussi