只要一提到把js放到网页中,就不得不涉及web的核心语言-HTML。如何做到让js与html共存,又不影响页面在浏览器中的呈现效果,最终决定就是为web增加统一的脚本支持。向html插入js的主要方法就是使用<script>元素。
<script>元素可以把js嵌入到html页面中,让脚本和标记混合在一起。
<script>元素有六个属性:
- async 异步加载脚本。只对外部脚本文件有效
- defer 脚本延迟加载。只对外部脚本文件有效
- src 包含外部文件。还可以包含来自外部域的js文件,但要多加小心。
- type 脚本语言的内容类型
- charset 很少用
- language 已废弃
<script type="text/javascript">
function sayHi() {
alert("Hi!");
}
</script>
包含在<script>元素中的js代码将被从上到下依次解释。如上,解释器会解释一个函数的定义,然后将该定义保存在自己的环境中。在解释器解析完标签里所有js代码之前,页面的其余内容都不会被浏览器加载或显示。解析外部脚本文件也是一样,在下载和解析外部js文件时,页面的处理也会暂停。所以为了避免浏览器在呈现页面时出现明显的延迟,一般把全部js引用放在body元素中,页面内容的最后。