Derniers tutoriels de développement web
 

JavaScript try / catch / finally

<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

Exemples

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