Нашел вот такой интересный код.
var i = 0;
function main(callback)
{
var i = 10;
callback();
}
main(function ()
{
alert(i);
});
Не могу понять, почему выводится 0. Ведь callback который мы передаем main вызывается в контексте main, значение
i в этом контексте равно 10, почему значение
i берется из глобального контекста? Второй день ломаю голову не могу понять.