script标签讲解

<script> 标签在 HTML 中用于定义客户端的脚本,通常是 JavaScript。它允许你直接在 HTML 文档中嵌入 JavaScript 代码,或者引用外部的 JavaScript 文件。以下是 <script> 标签的一些基本功能、语法和使用方法:

功能:

  1. 嵌入 JavaScript 代码:直接在 HTML 文档中写入 JavaScript 代码。
  2. 引用外部 JavaScript 文件:通过指定外部文件的 URL 来引入 JavaScript 代码。
  3. 控制脚本的执行时机:通过不同的属性控制脚本的加载和执行时机。

语法:

基本的 <script> 标签语法如下:

html 复制代码
<script>
  // 这里写入 JavaScript 代码
</script>

或者引用外部脚本文件:

html 复制代码
<script src="path/to/your-script.js"></script>

属性:

  • src:指定外部脚本文件的 URL。
  • type:指定脚本的 MIME 类型。对于 JavaScript,默认类型是 text/javascript,但通常可以省略这个属性。
  • async:表示脚本将异步加载,即在加载文档的其余部分时并行下载脚本,但不会阻塞 HTML 的解析。脚本一旦下载完成就会执行,可能在文档解析完成之前。
  • defer:表示脚本将在文档解析完成后,DOMContentLoaded 事件触发前执行。对于需要在 DOM 完全加载后执行的脚本很有用。
  • charset:指定脚本文件的字符集。
  • crossorigin:指定是否应该使用 CORS 来请求外部脚本。

使用方法:

  1. 直接嵌入 JavaScript 代码
html 复制代码
<script>
  function sayHello() {
    alert('Hello, World!');
  }
  sayHello();
</script>
  1. 引用外部 JavaScript 文件
html 复制代码
<script src="https://example.com/script.js"></script>
  1. 使用 asyncdefer
html 复制代码
<!-- 异步加载 -->
<script src="script1.js" async></script>
<script src="script2.js" async></script>

<!-- 延迟加载 -->
<script src="script1.js" defer></script>
<script src="script2.js" defer></script>

注意事项:

  • <script> 标签放在文档的 <head> 中可以避免渲染阻塞,但脚本执行可能会阻塞解析。
  • <script> 标签放在文档的底部,即 </body> 标签之前,可以确保在脚本执行前整个页面已经加载,但可能会导致页面渲染的延迟。
  • 使用 asyncdefer 属性可以改善页面加载性能,尤其是对于大型脚本或需要异步加载的脚本。

<script> 标签是 HTML 和 Web 开发中不可或缺的一部分,正确使用它可以提高页面的交互性和用户体验。

相关推荐
前端小趴菜052 小时前
React-React.memo-props比较机制
前端·javascript·react.js
RadiumAg4 小时前
记一道有趣的面试题
前端·javascript
yangzhi_emo5 小时前
ES6笔记2
开发语言·前端·javascript
yanlele5 小时前
我用爬虫抓取了 25 年 5 月掘金热门面试文章
前端·javascript·面试
烛阴6 小时前
void 0 的奥秘:解锁 JavaScript 中 undefined 的正确打开方式
前端·javascript
初遇你时动了情6 小时前
腾讯地图 vue3 使用 封装 地图组件
javascript·vue.js·腾讯地图
dssxyz6 小时前
uniapp打包微信小程序主包过大问题_uniapp 微信小程序时主包太大和vendor.js过大
javascript·微信小程序·uni-app
ohMyGod_1239 小时前
React16,17,18,19新特性更新对比
前端·javascript·react.js
@大迁世界9 小时前
第1章 React组件开发基础
前端·javascript·react.js·前端框架·ecmascript
一瓣橙子9 小时前
7.7日 实验03-Spark批处理开发(2)
开发语言·javascript·ajax