if (true) {
function foo(){ return 1; }
}
else {
function foo(){ return 2; }
}
foo();
Приведенный выше код является примером выражения функции и возвращает 1 в Firefox 28, тогда как 2 в Chrome (ожидаемый результат). Почему Firefox дает неверный результат?
chrome
загружает функциональные выражения перед выполнением любой строки кода, тогда какfirefox
делает это, когда его интерпретатор достигает строки объявления функций? - person BatScream   schedule 03.01.2015foo()
заменит его первое объявление? - person BatScream   schedule 03.01.2015