2.4 Typage dynamique
Bonjour à tous et bienvenue sur ce cours où on va voir le typage dynamique en JavaScript. Une chose qui sépare JavaScript de beaucoup d'autres langages de programmation c'est que JavaScript est un langage dynamique. Qu'est-ce qu'on entend par dynamique ? Eh bien nous avons deux types de langages de programmation. Langages statiques ou languages dynamiques. Dans les langages statiques lorsque nous déclarons une variable le type de la variable est défini et ne peut plus être modifié à l'avenir. Dans un langage dynamique comme JavaScript, le type d'une variable peut changer au moment de l'exection. Voyons cela dans le code. Alors, dans exemple de la dernière vidéo nous avons déclaré une variable "name" et nous l'avons défini sur une chaîne donc le type de cette variable est un "string". Mais il peut changer à l'avenir. Jetons un coup d'œil sur la console. Alors ici on peut exécuter du code javascript donc on va faire un "typeof". Type d'opérateur. Et avec ça, on peut vérifier le type d'une variable donc après ça on va ajouter le nom de la variable "name". Et là on nous dit que c'est un "string". Maintenant si on réaffecte cette même variable "name" à une valeur différente. On va lui assigner une valeur de 1. Et qu'on vérifie par la suite son type. Il est maintenant changer en "number". C'est ce qu'on appelle. C'est ce qu'on appelle un langage dynamique. Contrairement au langage statique, le type de ces variables sera être déterminé lors de l'exécution en fonction des valeurs que nous leur avons attribué. Voyons maintenant quelques exemples supplémentaires du type d'opérateurs et en passant notez que "typeof" est un autre mot clé réservé donc ne nous ne pouvons pas avoir une variable appeler "typeof". Maintenant on va effacer la console avec la commande ctrl + L. Maintenant regardons le type d'âge On nous dit que c'est un "number". Maintenant si on modifie l'âge en un nombre à virgule. le type reste toujours un "number". En javascript nous n'avons pas deux types de nombres, nous n'avons pas de nombres à virgule et de nombres entiers. Tous les nombres sont de type "number". Regardons le type "isApproved". C'est un "boolean". Le type de "firstName". Le type de "firstName" n'est pas défini, la valeur de cette variable n'est pas définie mais son type n'est pas non plus définis. Qu'est-ce que ça veut dire ? Eh bien plutôt dans la précédente vidéo je vous ai dis que nous avons deux catégories de types, les types primitifs et les types de références et en fait un type mais aussi. Maintenant qu'en est-il du type "sélectionCouleur". On va faire un "typeof". On nous dit que c'est un objet Qu'est-ce qu'un objet ? c'est le sujet de notre prochaine vidéo.