Apprendre à coder sur pierre-giraud.com

DES COURS COMPLETS ET GRATUITS POUR TOUS

SOMMAIRE

Introduction

  1. Présentation du cours
  2. Introduction au JavaScript
  3. Environnement de travail

Les bases en JavaScript

  1. Où écrire le JavaScript
  2. Syntaxe et commentaires
  3. Découverte des variables
  4. Les types de valeurs
  5. Opérations sur les variables
  6. La concaténation
  7. Présentation des conditions
  8. Les conditions if, if...else, if...else if...else
  9. Opérateurs logiques
  10. Evaluation / Simplification des conditions
  11. Conditions ternaires
  12. Switch
  13. Les boucles
  14. Découverte des fonctions
  15. Test n°1

Les objets en JavaScript

  1. Définition et découverte
  2. Valeurs primitives et objets
  3. Créer des objets
  4. Les méthodes de l’objet String
  5. Les méthodes de l’objet Number
  6. Découverte de l’objet Array
  7. Les méthodes de l’objet Array
  8. Découverte de l’objet Date
  9. Les méthodes de l’objet Date
  10. L’objet Math et ses méthodes
  11. Test n°2

Notions avancées sur les fonctions

  1. La portée en JavaScript
  2. Les fonctions anonymes
  3. Les fonctions auto-invoquées
  4. Les closures JavaScript
  5. Test n°3

Le DOM HTML

  1. Découverte du DOM HTML
  2. Accéder à un élément HTML
  3. Modifier du contenu HTML
  4. Ajouter et insérer des éléments HTML
  5. Modifier ou supprimer des éléments HTML
  6. Naviguer dans le DOM
  7. Les évènements en JavaScript
  8. AddEventListener()
  9. Propagation des évènements
  10. L'objet Event
  11. Test n°4

Le BOM - Browser Object Model

  1. Le BOM et l'objet Window
  2. L'objet Screen
  3. L'objet Navigator
  4. L'objet Location
  5. L'objet History
  6. Test n°5

Les expressions régulières

  1. Découverte des regex en JavaScript
  2. Recherches et remplacements
  3. Les quantifieurs et les options
  4. Les classes de caractères et les méta-caractères
  5. Test n°6

JavaScript et formulaires

  1. Rappels sur les formulaires en HTML
  2. Validation HTML des formulaires
  3. Validation JavaScript des formulaires
  4. Test n°7

L'élément HTML canvas

  1. Découverte de l'élément canvas
  2. Dessiner des rectangles
  3. Dessiner des lignes
  4. Dessiner des arcs de cercle
  5. Créer des dégradés
  6. Insérer du texte et des images
  7. Incliner un dessin
  8. Test n°8

Notions avancées

  1. Gestion du délai d'exécution
  2. La gestion des erreurs
  3. Le mode strict
  4. Test n°9

Conclusion

  1. Conclusion - Aller plus loin

LE MODE STRICT EN JAVASCRIPT

Présentation du mode strict

Le mode strict de JavaScript est, comme son nom l’indique, un mode qui va contenir une sémantique légèrement différente (plus stricte) du JavaScript normal.

On peut activer le mode strict de JavaScript grâce à l’expression use strict.

Si on utilise cette expression à l’intérieur d’une fonction, seul le code à l’intérieur de cette fonction sera exécuté en mode strict.

Si on utilise cette expression dans l’espace global du script, le mode strict sera appliqué à tout le script.

On va très souvent utiliser le mode strict pour simplement forcer l’écriture de code JavaScript moins permissif.

En effet, le mode strict va transformer certaines syntaxes non recommandées en véritables erreurs.

Par exemple, si vous déclarez une variable sans préciser le mot clef var , en JavaScript « normal » cette variable va devenir globale et aucune erreur ne sera déclenchée.

Cependant, cela est considéré comme une mauvaise pratique (notamment car dans un script long il risque d’y avoir des confusions).

Avec le mode strict, cela ne sera pas permis : si vous omettez le mot clef var dans la déclaration d’une variable, une erreur va être lancée et le script ne s’exécutera pas.

Utilisation du mode strict

Le mode strict va retourner une erreur dans les cas suivants (ne sont listés ici que les cas les plus communs où le JavaScript « normal » ne renverrait pas d’erreur) :

  • Une nouvelle variable est déclarée sans le mot clef var ;
  • On tente d’assigner une valeur à une variable / propriété qui est en lecture seule ;
  • On tente de supprimer une variable / propriété qui n’est pas supprimable ;
  • On définit une variable / propriété plus d’une fois ;
  • On tente de dupliquer le nom d’un paramètre ;
  • On tente d’utiliser une syntaxe octale ou des caractères d’échappements.

Notez également, au cas où vous soyez amené à l’étudier un jour, qu’avec le mode strict la méthode eval() n’est pas autorisée à créer des variables dépassant sa propre portée.

Nous ne parlerons pas de eval() dans ce cours car c’est une méthode dont on déconseille généralement l’utilisation et à plus fort titre pour des développeurs non expérimentés.

Exemple d’utilisation du mode strict dans l'espace global

Utilisons le mode strict dans le cas d’un court script utilisant des variables déclarées sans le mot clef var.

Notez bien que vous devez toujours déclarer le mode strict au début de votre script (ou au début de votre fonction) afin que celui-ci soit effectif.

Exemple d’utilisation du mode strict dans l'espace global

Seule la valeur de notre variable x est affichée

Dans ce premier exemple, on voit bien que la valeur de x est affichée sans problème tandis que celle de y ne l’est pas.

En effet, la variable y a été déclarée sans le mot clef var. L'utilisation du mode strict va donc faire qu'une erreur va être renvoyée et tout le code situé après la déclaration de la variable y ne sera pas exécuté.

Notez bien que le mode strict va renvoyer une erreur qui va totalement arrêter l’exécution du script. Ainsi, si nous avions essayé d’afficher la valeur de x après avoir déclaré y, rien n'aurait été affiché.

Exemple d’utilisation du mode strict dans l'espace local

Tentons maintenant d'utiliser le mode strict au sein d'une fonction, c'est-à-dire dans un espace local.

Une nouvelle fois, il faudra utiliser l'expression use strict au début du code de la fonction afin que ce mode soit bien pris en compte.

On déclare une variable sans le mot clef var en JavaScript normal

Les valeurs des variables sont affichées

Sans le mode strict, le JavaScript ne renvoit pas d'erreur et tout est bien affiché.

On déclare une variable sans le mot clef var avec le mode strict

Le mode strict renvoit une erreur et la valeur de y n'est pas affichée

Avec le mode strict, en revanche, l'omission du mot clef var lors de la déclaration de y renvoit une erreur et donc seule la valeur de x est affichée. Notez que si nous avions exécuté la fonction affY() avant affX(), aucune valeur n'aurait été affichée puisque l'erreur arrête l'exécution du script.

Chapitre précédent

Chapitre suivant