Movatterモバイル変換


[0]ホーム

URL:


Aller au contenu
Wikilivres
Rechercher

Programmation JavaScript/Exceptions et erreurs

Un livre de Wikilivres.
<Programmation JavaScript
Structures de contrôleStructures de contrôle
Fonctions utilisateurFonctions utilisateur
  1. Introduction
    Programmer en deux minutes
  2. Outils de développement
  3. Syntaxe
    1. Ligne d'instruction
    2. Ordre d'évaluation
    3. Bloc d'instructions
    4. Identificateurs
    5. Expression littérale
    6. Commentaire
    7. Mots réservés
    8. Variables
    9. Opérateurs
    10. Structures de contrôle
    11. Exceptions et erreurs
    12. Fonctions utilisateur
    13. Évènement
  4. Objets prédéfinis
    1. window
    2. document
    3. navigator
    4. Array
    5. Boolean
    6. Date
    7. Error
    8. Function
    9. Math
    10. Number
    11. Object
    12. String
    13. Element
    14. RegExp
  5. Fonctions prédéfinies
  6. Programmation avancée
    1. Opérateurs de bits
    2. Fermeture
    3. Programmation objet
    4. Notation JSON
    5. AJAX
    6. Stockage
    7. Générateurs
    8. Interface DOM
    9. Objets Microsoft
  7. Frameworks
    1. Dojo
      Hello World
      Widgets
      Ressources
    2. jQuery
    3. Node.js
    4. React.js
  8. Bibliothèques
    1. Datatables
  9. Tests
    1. Ava
    2. Jest
    3. Cypress
  10. Débogage
  11. Erreurs connues
  12. Références

Structures de contrôleStructures de contrôle
Fonctions utilisateurFonctions utilisateur

try / catch / finally

[modifier |modifier le wikicode]

Pour éviter qu'une erreur interrompe l'exécution du programme, on peut l'attraper et définir des actions à effectuer si elle survient.

Les exceptions les plus courantes sont des ressources introuvables (ex : plus de réseau ou base de données en maintenance) ou des calculs impossibles comme les divisions par zéro.

Exemples

[modifier |modifier le wikicode]

Appel réseau :

try{call_network()}catch(error){print_retry_later_message()}finally{log()}

Calcul d'une moyenne :

"use strict";constx=15;letaverage;try{x=x+5;average=x/0;alert("The average is: "+average);}catch(err){alert("Something strange occurs. The error is: "+err);}finally{alert("End of program.");}

Dans cet exemple, la division par zéro montre que l'exécution est toujours interrompue avant l'affichage de la moyenne, pour passer dans le bloccatch puis lefinally.

Si on corrige la division, on constate qu'on ne passe plus dans le bloccatch, mais toujours dans lefinally (même si les blocs qui le précèdent contiennent unreturn).

throw

[modifier |modifier le wikicode]

Il est aussi possible de provoquer soi-même des exceptions pour interrompre une exécution.

Exemples

[modifier |modifier le wikicode]

Calcul d'une moyenne :

"use strict";constx=15;letaverage;try{average=x/0;if(average===Infinity||Number.isNaN(average)){throw"Error during division. The result is: "+average;}alert("The average is: "+average);}catch(err){alert("Something strange occurs. The error is: "+err);}finally{alert("End of program.");}

Ici la division par zéro ne provoque pas d'exception, mais renvoieInfinity. On la provoque donc explicitement ensuite.

Calcul d'un âge :

"use strict";constanswer=prompt("How old are you?");constage=Number(answer);if(isNaN(age)){throwanswer+" cannot be converted to a number.";}alert("Next year you will be "+(age+1));
Récupérée de "https://fr.wikibooks.org/w/index.php?title=Programmation_JavaScript/Exceptions_et_erreurs&oldid=691242"
Catégorie :

[8]ページ先頭

©2009-2025 Movatter.jp