Необходимо реализовать класс MyPromise
, который выполняет базовую функциональность оригинального Promise
.
Мы уже знаем, что catch и finally являются обертками над then. Потому в этой задаче достаточно реализовать класс с двумя методами: constructor
и then
.
const promise = new MyPromise((resolve) => { setTimeout(() => resolve("aaa"), 500); }); promise .then((value) => { return new MyPromise((resolve) => { setTimeout(() => resolve(value + "bbb"), 500); }); }) .then((value) => { console.log(value); // "aaabbb" });