method
PromiseConstructor.try
callbackFn: (...args: U) => T | PromiseLike<T>,
...args: U
): Promise<Awaited<T>>;
Takes a callback of any kind (returns or throws, synchronously or asynchronously) and wraps its result in a Promise.
@param callbackFn
A function that is called synchronously. It can do anything: either return a value, throw an error, or return a promise.
@param args
Additional arguments, that will be passed to the callback.
@returns
A Promise that is:
- Already fulfilled, if the callback synchronously returns a value.
- Already rejected, if the callback synchronously throws an error.
- Asynchronously fulfilled or rejected, if the callback returns a promise.
fn: (...args: A) => T | PromiseLike<T>,
...args: A
): Promise<T>;
Run a function and return a promise of its result. If the function throws, the returned promise rejects with the thrown error.
@param fn
The function to run
@param args
The arguments to pass to the function. This is similar to setTimeout and avoids the extra closure.
@returns
A promise that resolves with the function's result