Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Цикл внутри функции (https://javascript.ru/forum/misc/68525-cikl-vnutri-funkcii.html)

Igbal 21.04.2017 21:44

Цикл внутри функции
 
Здравствуйте, не понимаю в чем проблема
var t=4;
var l=45;
var mas=[];
window.onload= function gig(){
for(var s=t;s<l;s++)
{
mas.push(s);
}
}
alert(mas[12]);

Alert выдает undefined
Хотя так
var t=4;
var l=45;
var mas=[];
window.onload= function gig(){
for(var s=t;s<l;s++)
{
mas.push(s);
}
alert(mas[12]);
}

Все прекрасно.
О чем это говорит ? Что переменные добавляются в массив только внутри функции, а вне их нет? Как мне запустить цикл for в window.onload и получать переменные для вывода их вне функции?

рони 21.04.2017 21:49

Igbal,
какие проблемы использовать второй вариант? привыкать мыслить асинхронно. откуда взятся данным в первом случае, если код их создающий, запустится только после алерта?

Igbal 21.04.2017 21:58

рони,
А у Alert имеется превосходство в начале работы вне зависимости находится ли он после или до функции?

рони 21.04.2017 22:20

Igbal,
window.onload сработает после загрузки всех скриптов, картинок, и парсинга страницы.


Часовой пояс GMT +3, время: 21:26.