Вопрос нужен, чтобы оценить, понимает ли кандидат различие между Promise и setTimeout и их место в очередях задач.
Короткий ответ
setTimeout помещает колбэк в очередь макрозадач. Promise внутри него создаётся и резолвится уже во время выполнения этой макрозадачи. Микрозадачи Promise будут выполнены сразу после завершения текущего колбэка setTimeout, но до следующей макрозадачи. Это влияет на порядок выполнения кода.
Длинный ответ
Зарегистрироваться
Развернутый ответ доступен только зарегистрированным пользователям.