title: Is possible to call async function without await keyword? and what happens if we call without await?
body: <p>I would like to do the following and keep in mind it actually works for me. my question is what happens and Is possible to call <code>async usrs()</code> func from non async <code>componentDidMount()</code> func?
  if it is not possible why it is working for me by calling <code>this.usrs(usrs)</code> instead of <code>await this.usrs(usrs);</code></p>
  
  <pre><code>let outState = {};
  class A extends Component{
    componentDidMount(){
     this.usrs(usrs);
    }
    getData(usr){
      return db.collection('a/'+usr+'/bb').get().then(snap=&gt;{
        for(i = snap.docs.length-1; i&gt;=0; i--){
           outState[usr] = [...outState[usr], snap.docs[i].data()];
           if(i === 0) return outState;
        }
       return false;
      });
    }
  
    async usrs(usrs){
  
     let os = {}, data = {};
  
      for(i = usrs.length-1; i&gt;=0; i--){
  
         os = await this.getData(usrs[i]);
         if(os){
            data = { ...data, ...os };
            if (i === 0) {
               this.setState({ ...this.state, ...data });
            }
         }
  
      }
  
    }
  
  }
  </code></pre>