javascript interview question #35

В каком порядке сообщения будут выведены в консоль?

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

И setTimeout, и Promise.resolve позволяют выполнить асинхронный код. Поэтому вызовы console.log произойдут после минимальной задержки.

Разница между ними в том, что Promise.resolve планирует микро-задачу, а setTimeout - макро-задачу.

У микро-задач приоритет выше, поэтому Promise.resolve сработает быстрее и первым сообщением на экране мы увидим 2.


ОТВЕТ: Сначала будет выведена цифра 2, а после нее - 1.