Scope

5 min Niveau 8

Comme pour beaucoup de langages de programmation, les variables JavaScript ont des règles de portée.

En informatique, une portée désigne la “visibilité” d’une variable.

La portée dans les blocs

Avant 2015, le JavaScript n’avait pas la portée “bloc”, juste la portée globale et la portée dans les fonctions.

Depuis 2015, le langage met à disposition 2 nouveaux types de variables : const et let.

Ces deux mot-clés permettent au JavaScript d’avoir une portée dans les blocs. Cela signifie que les variables déclarées avec let et const dans les blocs, ne peuvent pas être utilisées à l’extérieur du bloc au sein duquel elles ont été déclarées.

Exemple :

{
    let x = 2; // x est utilisable seulement au sein de ce bloc
}
// x n'est pas utilisable ici

En revanche, le mot-clé var ne souffre pas de la portée dans les blocs. En d’autres termes, une variable déclarée avec var peut-être utilisée à l’extérieur dudit bloc.

Exemple :

{
    var x = 2; // x est utilisable ici
}
// x est également utilisable ici

La portée locale

Les variables déclarées dans les fonctions JavaScript ne peuvent pas être réutilisées à l'extérieur de la fonction. Les variables ayant une portée locale se voit également appliquer une portée fonction ne leur permettant pas d’être utilisées à nouveau ailleurs dans le code.

Exemple :

// Ici, la variable carName n'est pas utilisable

function myFunction() {
  let carName = "Volvo";
  // Ici, le code peut utilisercarName
}

// Ici, le code ne peut pas utiliser carName

Puisque les variables locales sont, comme leur nom l’indique, seulement reconnues localement au sein d’une fonction, le même nom de variable peut être réutilisé dans plusieurs fonctions différentes.

En fait, avec une fonction, la variable est créée au début de la fonction et effacée à la fin.

La portée fonction

logo discord

Besoin d'aide ?

Rejoignez notre communauté officielle et ne restez plus seul à bloquer sur un problème !

En savoir plus