JavaScript是一种专为与网页交互而设计的脚本语言,由三部分组成:
1.ECMAScript,提供核心语言功能
2.文档对象模型DOM,提供访问和操作网页内容的方法和接口
3.浏览器对象模型BOM,提供与浏览器交互的方法和接口
<script>元素,有以下属性
async:可选。表示应该立即下载脚本,但不妨碍页面中的其他操作,比如下载其他资源或等待加载其他脚本。只对外部脚本文件有效。
defer:可选。表示脚本可以延迟到文档完全被解析和显示之后再执行。只对外部脚本文件有效。
src:可选。表示包含要执行代码的外部文件。
type:可选。表示编写代码使用的脚本语言的内容类型(也被成为MIME类型)。默认是text/javascript。实际上,服务器在传送JS文件时使用的MIME类型通常是application/x-javascript,但在type中设置这个值却可能导致脚本被忽略。在非IE中还可以使用以下值:application/javascript和application/ecmascript。考虑到约定俗称和最大限度的浏览器兼容性,目前type属性依旧还是text/javascript。
charset:可选。表示通过src属性指定的代码的代码的字符集。
异步脚本
<script src="example.js" async="async"></script>
并不保证按照指定他们的先后顺序执行。建议异步脚本不要在加载期间修改DOM。
异步脚本一定会在页面的load事件前执行。
支持的有Firefox3.6+、Safari 5和Chrome。
延迟脚本
<script src="example.js" defer="defer"></script>
HTML5规范要求脚本按他们出现的先后顺序执行。建议只包含一个延迟脚本
放置位置
放在页面后面,即主要内容后面,</body>标签前面。
使用方式:1.直接在页面中嵌入JS代码2.包含外部JS文件
使用外部文件的优点
1.可维护性,方便维护
2.可缓存,浏览器能根据具体的设置缓存链接的所有外部JS文件,也就是如果两个页面使用同一个文件那么这个文件只需下载一次,加快页面加载速度
文档模式doctype
混杂模式quirks mode,标准模式standards mode。没声明默认开启混杂模式。采用混杂模式不是什么值得推荐的做法,因为不同浏览器在这种模式下的行为差异非常大。
主要影响CSS内容的呈现方式,但在某些情况下也会影响JS的解析。
原文:https://www.cnblogs.com/Mijiujs/p/12093682.html