Back to questions
Middle
6
Реализуй функцию promiseWithResolver (deferred promise), которая возвращает объект с полями resolve и promise.
Companies where asked
Mayflower
Answer from AI
sobes.tech AI
Функция promiseWithResolver создаёт отложенный промис (deferred promise), возвращая объект с самим промисом и функцией для его разрешения (resolve). Это полезно, когда нужно контролировать момент разрешения промиса извне.
Пример реализации на JavaScript:
function promiseWithResolver() {
let resolve;
const promise = new Promise(res => {
resolve = res;
});
return { promise, resolve };
}
// Использование:
const deferred = promiseWithResolver();
deferred.promise.then(value => console.log('Resolved with:', value));
deferred.resolve('Success');
В этом примере resolve доступен снаружи, и мы можем вызвать его в любое время, чтобы разрешить промис.