promise return text javascript code example

Example 1: js return a promise

function myAsyncFunction(url) {
  return new Promise((resolve, reject) => {
    const xhr = new XMLHttpRequest();
    xhr.open("GET", url);
    xhr.onload = () => resolve(xhr.responseText);
    xhr.onerror = () => reject(xhr.statusText);
    xhr.send();
  });
}

Example 2: resolve vs return promise js

In simple terms, inside a then handler function:

A) When x is a value (number, string, etc):
	- return x is equivalent to return Promise.resolve(x)
	- throw x is equivalent to return Promise.reject(x)

B) When x is a Promise that is already settled (not 
pending anymore):
	- return x is equivalent to return Promise.resolve(x), 
      if the Promise was already resolved.
	- return x is equivalent to return Promise.reject(x), 
      if the Promise was already rejected.
      
C) When x is a Promise that is pending:
	- return x will return a pending Promise, and it will 
    be evaluated on the subsequent then.
Read more on this topic on the Promise.prototype.then() docs.

Tags:

Misc Example