第二章——HTML中的JavaScript

HTML中的JavaScript

2.1 script元素

元素属性

script元素的加载时机有五种(其中es6的模块机制有两种)。
由于在网上实在是没找到原图,只能自己手绘了

在这里插入图片描述

  • 无: 这种情况下当遇到script的时候会加载js脚本的内容,加载结束之后执行脚本内容(因此为了不出现长时间的空白页的情况,请将script元素放在body的结束标签之前,其他元素之后)。
  • defder:可选。当遇到script元素的时候会加载且不影响HTML页面解析,当解析结束后再去执行js脚本。这种只对外部文件有效。
  • async:可选。当遇到script元素时会与其他元素同时加载,当script加载结束后执行js标本的内容,且阻止HTML页面的解析。
  • type:可选。代替language,表示代码块中脚本的语言(也成为MIME类型)。如果值是model,则代码表示ES6代码块,而且只有值是module的情况下才能出现importexport关键字。
  • charset:可选。使用src属性执行的代码字符集。这个属性很少用,因为大部分浏览器不在意它的值
  • src:可用。表示包含要执行的代码的外部文件。
    注意:包含在 script元素里的代码块会 由上到下 解析。如果代码中出现 字符串</script> 的时候会认为这就是它的闭合标签,它下面的脚本都会报错,如果需要的话需要使用“转义符”<\/script>就好了。