Я не можу зрозуміти, чому змінні діють так дивно, коли оголошуються всередині функції.
У
first
функції я оголошую зіlet
зміннимиb
таc
зі значенням 10 :b = c = 10;
У
second
функції я показую:b + ", " + c
І це показує:
10, 10
Також у
first
функції я оголошуюa
зі значенням 10 :let a = b = c = 10;
Але у
second
функції він показує помилку:Неможливо знайти змінну:
a
Тепер у
first
функції я оголошуюd
зі значенням 20 :var d = 20;
Але у
second
функції він показує ту саму помилку, що і раніше, але зі змінноюd
:Неможливо знайти змінну:
d
Приклад:
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
означає Dim Apple / Dim Banana / Dim Pear As Fruit
, а не Dim Apple As Fruit / ...
.
b
іc
НЕ передуєvar
ключовим словом.a
іd
є місцевими дляfirst
.