Показать сообщение отдельно
  #1 (permalink)  
Старый 04.07.2016, 14:22
Новичок на форуме
Отправить личное сообщение для ibahob Посмотреть профиль Найти все сообщения от ibahob
 
Регистрация: 04.07.2016
Сообщений: 1

Вопрос на собеседовании
function get() {
var a = 1;
function summ() {
var b = 2;
b = b + a;
var a = 3;
return b;
}
return summ();
}
Что вернет функция get?
Ход моих мыслей такой был: смотрим в функцию summ там обьвление a и b они локальные, несмотря на то что а обьявлена в конце, интерператоро при проходе все сделает ок, и при вычеслении b = b + a; получи b= 5;
но в реалии какойто яд получился, в хроме потестил ради интереса и вообще в ауте. при прощете b=b+a у меня a = undefined !!! как такто, они при любоим раскладе не должно быть undefined, как минимум через замыкание вытянулобы а=1
как такто расстолкуйте
Ответить с цитированием