JavaScript 'подъем' [дубликат]
На этот вопрос уже есть ответ здесь:
Javascript функция определения объема и подъема 15 ответовЯ столкнулся с «подъемом» JavaScript и не понял, как на самом деле работает этот фрагмент кода:
var a = 1;
function b() {
a = 10;
return;
function a() {}
}
b();
alert(a);
Я знаю, что объявление функции вроде (function a() {}
) собирается быть поднятым к вершине функцииb
объем, но он не должен переопределять значениеa
(потому что объявления функций переопределяют объявления переменных, но не инициализацию переменных), поэтому я ожидал, что значение предупреждения будет 10 вместо 1 !!