<Déclarations JavaScript Référence
Exemple
Dans cet exemple, nous avons fait une faute de frappe dans le code (dans le bloc d'essai).
L'exemple est censé alerter "Welcome guest!" , Mais alerte est mal orthographié.
Le bloc catch intercepte l'erreur, et exécute un code pour gérer:
<!DOCTYPE html>
<html>
<body>
<p id="demo"></p>
<script>
try {
adddlert("Welcome guest!");
}
catch(err) {
document.getElementById("demo").innerHTML = err.message;
}
</script>
</body>
</html>
Essayez vous - même » Plus "Try it Yourself" - "Try it Yourself" exemples ci - dessous.
Définition et utilisation
Le try / catch / finally poignées déclaration une partie ou toutes les erreurs qui peuvent se produire dans un bloc de code, alors que le code fonctionne encore.
Les erreurs peuvent être des erreurs de codage faites par le programmeur, les erreurs dues à mauvaise entrée, et d'autres choses imprévisibles.
L'instruction try vous permet de définir un bloc de code à tester des erreurs pendant qu'il est en cours d' exécution.
La déclaration de capture vous permet de définir un bloc de code à exécuter, si une erreur se produit dans le bloc d'essai.
La finally vous permet d' exécuter du code, après try et catch, quel que soit le résultat.
Remarque: Les prises et finally sont tous deux en option, mais vous devez utiliser un d'entre eux (if not both) les (if not both) en utilisant l'instruction try.
Astuce: Si une erreur se produit, JavaScript normalement arrêter et générer un message d'erreur. Utilisez le jet instruction pour créer une erreur personnalisée (throw an exception) . Si vous utilisez jeter ensemble avec try et catch, vous pouvez contrôler le déroulement du programme et générer des messages d'erreur personnalisés.
Pour plus d' informations sur les erreurs JavaScript, lire JavaScript erreurs Tutorial.
Support du navigateur
Déclaration | |||||
---|---|---|---|---|---|
try/catch/finally | Oui | Oui | Oui | Oui | Oui |
Syntaxe
try {
tryCode - Block of code to try
}
catch( err ) {
catchCode -
Block of code to handle errors
}
finally {
finallyCode - Block of
code to be executed regardless of the try / catch result
}
Les valeurs des paramètres
Paramètre | La description |
---|---|
tryCode | Champs obligatoires. Bloc de code à tester des erreurs pendant qu'il est en cours d'exécution |
err | Requis si utilisé avec des captures. Indique une variable locale qui fait référence à l'erreur. La variable peut se référer à l'objet d'erreur (contient des informations sur l'erreur est survenue, comme le message « « addlert » est pas défini »). Si l'exception a été créé par l'instruction throw, la variable fait référence à l'objet spécifié dans l'instruction throw (voir « Autres exemples ») |
catchCode | Optionnel. Bloc de code à exécuter, si une erreur se produit dans le bloc d'essai. Si aucune erreur se produit, ce bloc de code est jamais exécuté |
finallyCode | Optionnel. Bloc de code à exécuter quel que soit le try / catch résultat |
Détails techniques
JavaScript Version: | 1.4 |
---|
autres exemples
Exemple
Cet exemple examine l'entrée. Si la valeur est erronée, une exception (err) est levée.
L'exception (err) est pris par la déclaration de capture et un message d'erreur personnalisé est affiché:
<!DOCTYPE html>
<html>
<body>
<p>Please input a number between
5 and 10:</p>
<input id="demo" type="text">
<button type="button"
onclick="myFunction()">Test Input</button>
<p id="message"></p>
<script>
function myFunction() {
var message, x;
message =
document.getElementById("message");
message.innerHTML = "";
x =
document.getElementById("demo").value;
try {
if(x == "") throw "is Empty";
if(isNaN(x)) throw "not a number";
if(x > 10) throw "too high";
if(x < 5) throw "too low";
}
catch(err) {
message.innerHTML =
"Input " + err;
}
}
</script>
</body>
</html>
Essayez vous - même » Exemple
La finally vous permet d' exécuter du code, après try et catch, quel que soit le résultat:
function myFunction()
var message,
x;
message =
document.getElementById("message");
message.innerHTML = "";
x =
document.getElementById("demo").value;
try {
if(x == "") throw "Empty";
if(isNaN(x))
throw "Not a number";
if(x >
10) throw "Too high";
if(x <
5) throw "Too low";
}
catch(err)
{
message.innerHTML = "Error: " +
err + ".";
}
finally {
document.getElementById("demo").value
= "";
}
}
Essayez vous - même » Pages associées
JavaScript Tutoriel: erreurs JavaScript
Référence JavaScript: JavaScript jet Déclaration
<Déclarations JavaScript Référence