[JS] var внутри блока if как работает?

dickofan


if (false) {
var foo = 15;
}
alert(foo);

по стандарту вроде блок не ограничивает область видимости переменной, тем не менее алерт отдает undefined - кому верить?

zorin29

Пардон, а в чем проблема? foo объявлена, но не равна 15, ибо false.

dickofan

т.е. если я после блока if определю foo, то это будет именно эта объявленная, а не новая? и область видимости будет до границ ближайшей функции?

uncle17

и область видимости будет до границ ближайшей функции?
точно

psm-home

Может полезно будет. Подборка сказок про УГ в JavaScript. Например про то что ты сейчас спрашивал (раздел Hoisting).
Оставить комментарий
Имя или ник:
Комментарий: