title: Is using async in setTimeout valid?
body: <p>I had a asynchronous function in Javascript and I added setTimeout to it. The code looks like that:</p>
  
  <pre><code>        let timer;
          clearTimeout(timer);
          timer =setTimeout(() =&gt; {
          (async() =&gt; {
              await this._doSomething();
          })();
          }, 2000);
  </code></pre>
  
  <p>The purpose of setTimeout is to add 2 seconds before function will be run. It is to be sure that user stopped typing. </p>
  
  <p>Should I remove async/await from this function now, since setTimeout is asynchronous anyway?</p>