Решение

Решение

@true_js

Ответ:

one
four
three
two

Обьяснение:

Синхронные операции выполняются быстрее асинхронных, поэтому сначала будет выведено 'one' и 'four'.

Вызов Promise создают так называемую микро таску (микро задачу), а setTimeout создаёт макро таску. Микро таска будет выполнена быстрее, поэтому выведется 'three', а уже после 'two'.

Код для проверки:

console.log('one');

setTimeout(function() {
  console.log('two');
}, 0);

Promise.resolve().then(function() {
  console.log('three');
})

console.log('four');




Report Page