Javascript <;脚本异步>;vs document.getElementsByTagName(';script';)[0].insertBefore等。?

Javascript <;脚本异步>;vs document.getElementsByTagName(';script';)[0].insertBefore等。?,javascript,html,dom,pageload,Javascript,Html,Dom,Pageload,以下各项之间是否存在重大差异: <script type="text/javascript" src="/script.js" async></script> ?我只能引用: 在不支持async属性的旧浏览器中,插入解析器的脚本会阻止解析器;脚本插入脚本在IE和WebKit中异步执行,但在Opera和4.0之前的Firefox中同步执行 因此,换句话说,第二种方法仍然会在较旧的IE和WebKit浏览器中异步计算脚本。为什么要执行第二种方法? (function() {

以下各项之间是否存在重大差异:

<script type="text/javascript" src="/script.js" async></script>

我只能引用:

在不支持
async
属性的旧浏览器中,插入解析器的脚本会阻止解析器;脚本插入脚本在IE和WebKit中异步执行,但在Opera和4.0之前的Firefox中同步执行


因此,换句话说,第二种方法仍然会在较旧的IE和WebKit浏览器中异步计算脚本。

为什么要执行第二种方法?
(function() {
  var s = document.createElement('script'); 
  s.type = 'text/javascript'; 
  s.async = true; 
  s.src = 'script.js'; 
  var x = document.getElementsByTagName('script')[0]; 
  x.parentNode.insertBefore(s, x)
;})();