title: Is the "async" attribute/property useful if a script is dynamically added to the DOM?
body: <p>This question is sort of a tangent to <a href="https://stackoverflow.com/questions/1834077/which-browsers-support-script-async-async">Which browsers support &lt;script async=&quot;async&quot; /&gt;?</a>.</p>
  
  <p>I've seen a few scripts lately that do something like this:</p>
  
  <pre><code>var s = document.createElement('script');
  s.type = 'text/javascript';
  s.async = true;
  s.src = 'http://www.example.com/script.js';
  document.getElementsByTagName('head')[0].appendChild(s);
  </code></pre>
  
  <p>This is a common way to add a script to the DOM dynamically, which, IIRC from Steve Souders's book "<a href="https://rads.stackoverflow.com/amzn/click/com/0596522304" rel="noreferrer" rel="nofollow noreferrer">Even Faster Web Sites</a>," prompts all modern browsers to load the script asynchronously (i.e., not blocking page rendering or downloading of subsequent assets).</p>
  
  <p>If I'm correct in that, does the <code>s.async = true</code> statement have any use? Wouldn't it be redundant, even for the browser(s) that support that property, since dynamically appended a script should already trigger asynchronous downloading?</p>