Задача JS
@frontend_testsОтвет:
Promise {<pending>} Hello Promise {<fulfilled>: 'Hello'}
Обьяснение:
Promise может находиться в трёх состояниях:
- ожидание (pending): начальное состояние, не исполнен и не отклонён.
- исполнено (fulfilled): операция завершена успешно.
- отклонено (rejected): операция завершена с ошибкой.
Первой будет выведена последняя строка, т.к. код выполняется синхронно. В этот момент промис находится в статусе ожидания, поэтому выведется Promise {<pending>}
Через 2 секунды промис зарезолвится и выведется значение, которое мы передали, т.е. Hello.
Сразу после этого выведется Promise {<fulfilled>: 'Hello'}, т.к. промис вошел в состояние "исполнено".
Более подробно изучить теорию можно на моём втором канале Frontend Study
Код для проверки:
const front_tests = new Promise((resolve, reject) => { setTimeout(() => { resolve('Hello'); }, 2000); }); front_tests.then((value) => { console.log(value); console.log(front_tests); }); console.log(front_tests);