var x = 3;
if(1==1){
if(2==2){
var x= 5;
}
}
document.write(x); // outputs 5
Итак, я провел несколько тестов, чтобы лучше понять концепцию локальной и глобальной области видимости.Я думал, что объявление x
с ключевым словом var
создает локальную переменную и игнорирует любую переменную с таким же именем в родительской области.Под игнорированием я подразумеваю, как я могу изменить переменную x
, не затрагивая ту же переменную в области видимости над ней.Но, видимо, мое понимание определения js-переменных неверно.не могли бы вы объяснить, почему он так себя ведет?