La portée des variables

Voir la vidéo
Description Sommaire

Nous n'allons rien apprendre de nouveau aujourd'hui mais nous allons faire le point sur une notion importante : La portée des variables (scope en anglais).

Les variables ont une portée limitée et n'existent que dans le bloc où elles sont définies

if (true) {
    let a = 3
}
console.log(a) // ERREUR, a is not defined

En revanche une variable peut être lue dans les blocs enfants du bloc courant

let a = 3
if (true) {
    console.log(a) // 3
    a = 5 // On modifie la variable du "scope" parent
}
console.log(a) // 5

On peut aussi avoir plusieurs variables de même nom avec des portées différentes

let a = 3
if (true) {
    let a = 5 // On crée une nouvelle variable pour le "scope" courant
    console.log(a) // 5
}
console.log(a) // 3

Même si cela fonctionne, on essaiera d'éviter de réutiliser le même nom de variable pour éviter les confusions.

Publié
Technologies utilisées
Auteur :
Grafikart
Partager