Completion requirements
5: Portée des variables
En JavaScript les variables ont une « portée », c'est à dire qu'elles sont visibles uniquement dans un contexte.
Par exemple:
function exemple1(){
let v1=100;
}
function exemple2(){
console.log(v1); // Erreur !
}
La variable v1 est visible uniquement dans la fonction exemple1 et pas dans exemple2.
Un « bloc » est crée par des accolades :
if(x){
// ceci est un bloc
}Une variable définie avec « let » dans un bloc est uniquement visible dans ce bloc:
if(x==1){
let v=123;
}
console.log(v); // Erreur !
Elle est visible même si on est dans un bloc inclus dans celui qui l'a défini:
if(x==1){
let v=123;
for(let i=0;i<10;i++){
console.log(v); // OK !
}
}
console.log(v); // Erreur !