对于普通的的javascript类型的文件不须要添加, 由于不添加默认为text/javascript格式, 除此以外, 服务器在传送javascript文件是使用的MIME类型是application/x-javascript,但在type中设置这个值却可能致使脚本被忽略。当浏览器遇到</script>这个字符串是会认为当前的script脚本已经执行结束, 即便是
"</script>"字符串也须要这样执行, 若是这个确实须要被作为字符串处理, 那必须进行转义就像这样"</script>"。javascript
对于现代浏览器来讲, HTML5的规范中已经说明, 在执行script标签的时候会忽略defer这个属性, 这个属性是的做用只适用于外部加载的script文件,会对外部文件马上进行下载, 可是并不会执行,具体的执行时间是在遇到了</html> 这个html的结束标签以后, 而且在JavaScript的文件中不能保证延迟加载的这些文件会按照顺序加载, 可是基于HTML5的规范中, javascropt脚本文件应该按照顺序执行, 这样若是仍是要使用defer属性的话, 就应该只能对惟一的某一个文件进行使用, 这样的作法也并非很好,因此仍是应该将这样的文件放到body的最底部。
异步属性的做用是使浏览器异步加载脚本, 这个加载会当即下载,但不会执行, 不能保证执行的前后顺序,
在html文件中最好的操做仍是不加入html文件, 基于如下三天