Non riesco a capire perché le variabili si comportino in modo strano quando dichiarate all'interno di una funzione.
Nella
first
funzione dichiaro conlet
le variabilib
ec
con il valore 10 :b = c = 10;
Nella
second
funzione mostro:b + ", " + c
E questo mostra:
10, 10
Anche in
first
funzione dichiaroa
con valore 10 :let a = b = c = 10;
Ma nella
second
funzione mostra un errore:Impossibile trovare la variabile:
a
Ora nella
first
funzione dichiarod
con valore 20 :var d = 20;
Ma nella
second
funzione mostra lo stesso errore di prima, ma con la variabiled
:Impossibile trovare la variabile:
d
Esempio:
function first() {
let a = b = c = 10;
var d = 20;
second();
}
function second() {
console.log(b + ", " + c); //shows "10, 10"
try{ console.log(a); } // Rreference error
catch(e){ console.error(e.message) }
try{ console.log(d); } // Reference error
catch(e){ console.error(e.message) }
}
first()
Dim Apple, Banana, Pear As Fruit
significa Dim Apple / Dim Banana / Dim Pear As Fruit
e non Dim Apple As Fruit / ...
.
b
ec
non hanno il prefisso con lavar
parola chiave.a
ed
sono locali afirst
.