therefore would take too long to return a value using the <code>return</code> statement of a function. Instead, they do their work in the background, allowing other Javascript code to run in the meantime. When they are done, they call a function with their results.</p>
<p>The <code>m.request</code> function takes time to run because it makes an HTTP request to a remote server and has to wait for a response, which may take several milliseconds due to network latency.</p>
<hr>
<h3 id="promise-chaining"><a hre