Promise resolve/reject can be called anywhere/anywhen

--

let promiseResolve; //call in the handler as promiseResolve(someResult)

const asyncResult /*return from function*/ = new Promise((resolve) => {
promiseResolve = resolve;
});

--

--