title: Defer is not loading the page faster
body: <p>I am trying to understand defer with a simple example. I have the below JS code which takes 5 seconds to run.</p>
  
  <p><strong>home.js</strong></p>
  
  <pre><code>function wait(ms){
      var start = new Date().getTime();
      var end = start;
      while(end &lt; start + ms) {
        end = new Date().getTime();
     }
  
   }
  
   wait(5000);
  </code></pre>
  
  <p>I am using this in <strong>home.html</strong> as shown below:</p>
  
  <pre><code>&lt;html&gt;
      &lt;head&gt;
          &lt;script defer src="home.js"&gt;&lt;/script&gt;
      &lt;/head&gt;
  &lt;body&gt;
      &lt;h1&gt;Hello World!&lt;/h1&gt;
  &lt;/body&gt;
  &lt;/html&gt;
  </code></pre>
  
  <p>I find that if use defer or put my script at the end of body tag ( in my understanding both are equivalent), hello world appears only after 5 seconds. But if I use asnyc 'hello world' appears immediately. Why is this?</p>