title: How to use Promise.prototype.finally() in async/await syntax?
body: <p>Actually my main question was using <code>Promise.prototype.catch()</code> in <code>async/await</code> <code>ES8</code> syntax, Undoubtedly <code>Promise.prototype.then()</code> is existed in essence of <code>async/await</code> syntax.</p>
  
  <p>I searched about using <code>Promise.prototype.catch()</code>  in <code>async/await</code> and found this:</p>
  
  <pre><code>async () =&gt; {
    try {
      const result1 = await firstAsynchronousFunction();
      const result2 = await secondAsynchronousFunction(result1);
      console.log(result2);
    } catch(err) {
      throw new Error(`Something failed`);
    }
  }
  </code></pre>
  
  <p>And absolutely I knew about <code>Promise</code> chaining, like:</p>
  
  <pre><code>new Promise((resolve) =&gt; {
    console.log(`Initial`);
    resolve();
  })
  .then(() =&gt; {
    console.log(`Task Number One`);
  })
  .catch(() =&gt; {
    console.log(`Task in Error`);
  })
  .finally(() =&gt; {
    console.log(`All Tasks is Done`);
  })
  </code></pre>
  
  <p>So, my question is <strong>how I can use <code>finally</code> in <code>async/await</code> syntax</strong>?</p>