Sobes.tech
Middle

Կատարեք promiseWithResolver (հետաձգված խոստում) ֆունկցիան, որը վերադարձնում է օբյեկտ, որի դաշտերը resolve և promise են։

sobes.tech AI

Պատասխան 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('Լուծված է՝', value));
deferred.resolve('Հաջողություն');

Այս օրինակով, resolve հասանելի է արտաքինից և կարող է ցանկացած ժամանակ կանչվել՝ խոստումը լուծելու համար։