Script, Script defer, Script async - jellyfish-tom/TIL GitHub Wiki

[SOURCES]

1. Normal execution <script>

This is the default behavior of the <script> element. Parsing of the HTML code pauses while the script is executing. For slow servers and heavy scripts this means that displaying the webpage will be delayed.

2. Deferred execution <script defer>

Simply put: delaying script execution until the HTML parser has finished. A positive effect of this attribute is that the DOM will be available for your script. However, since not every browser supports defer yet, don’t rely on it!

3. Asynchronous execution <script async>

Don’t care when the script will be available? Asynchronous is the best of both worlds: HTML parsing may continue and the script will be executed as soon as it’s ready. I’d recommend this for scripts such as Google Analytics.

⚠️ **GitHub.com Fallback** ⚠️