Назад к вопросам
JuniorТеорияЧасто
Что выведет программа (строки через пробел)?
console.log(1);
setTimeout(() => {
console.log(2);
}, 0);
console.log(3);1 3 2
- Ждать
1 2 3: задержка0не значит «сразу» — колбэк ждёт, пока текущий код не закончится, поэтому сначала печатается3. - Считать, что таймер пропадёт, когда закончится последняя строка: Node не завершает программу, пока ждущий колбэк
setTimeoutне выполнится.
- Что выведет программа, если задержка будет
100, а не0? - Что выведет программа, если после первого добавить второй
setTimeout(…, 0), печатающий4?