Scope
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
Besoin d'aide ?
Rejoignez notre communauté officielle et ne restez plus seul à bloquer sur un problème !