Контекст работы функции.
Нашел вот такой интересный код.
var i = 0;
function main(callback)
{
var i = 10;
callback();
}
main(function ()
{
alert(i);
});
Не могу понять, почему выводится 0. Ведь callback который мы передаем main вызывается в контексте main, значение i в этом контексте равно 10, почему значение i берется из глобального контекста? Второй день ломаю голову не могу понять. |
Контекст функции берется не от того где она вызывается, а от того где она объявляется.
|
| Часовой пояс GMT +3, время: 04:01. |