JavaScript是浏览器的内置脚本语言。当网页中嵌入了JavaScript脚本,浏览器加载网页时,就会执行脚本,从而操做浏览器,实现各类动态效果javascript
<script>
元素直接嵌入代码<script type="text/javascript"> function sayHello() { alert("hello!"); } </script>
<script>
元素加载外部脚本<script type="text/javascript" src="example.js"></script>
<script>
标签相关属性<script>
标签默认就是JavaScript代码,嵌入javascript脚本时,type属性能够省略<script>
标签中嵌入任意的文本内容,只要加上一个浏览器不认识的type属性就行,浏览器不会执行也不会显示它的内容,可是这个<script>
节点依然存在于DOM之中,可使用<script>
节点的text属性读取它的内容<script src="a.js" defer></script> <script src="b.js" defer></script>
defer属性的运行流程:java
<script>
元素<script>
元素加载的外部脚本须要注意:浏览器
<script src="a.js" async></script> <script src="b.js" async></script>
async属性的运行流程:缓存
<script>
标签<script>
标签中的外部脚本须要注意:app
window.addEventListener("load",ready);
document.addEventListener("DOMContentLoaded",ready);
['a.js', 'b.js'].forEach(src => { const script = document.createElement('script'); script.src = src; script.async = false; document.head.appendChild(script); });
<script>
标签内部的JavaScript代码,将被从上到下一次解析<Script>
标签在页面中出现的前后顺序对它们进行解析<script>
放在底部的缘由一、避免“阻塞效应”。二、避免,在DOM结构生成以前调用DOM节点,而产生错误