Я не могу понять, почему переменные действуют так странно, когда объявлены внутри функции.
В
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
.