Доброго времени суток. На собеседовании задали вопрос:
var name = "Jonh";
function sayHi(){ alert(name); }
setTimeout(function(){
var name = "Mike";
sayHi();
}, 1000);
Что выведет console.log() - Jonh, или Mike? Ошибся сказав что Mike. Выводит Jonh. Тотально не понимаю поведения этого кода.
Обьясните пожалуйста в чем дело. Желательно в деталях.