54. script 标签位置的性能影响:为什么建议写在 body 末尾? 副本.md

查看飞书原文 ↗3,117 字符

1. 核心概念 (Core Concept)

script 标签用于在 HTML 页面中嵌入或引用 JavaScript 代码。其在 HTML 文档中的位置会显著影响页面的加载、解析和渲染过程,进而影响用户体验。将 script 标签放置在 <body> 标签的末尾是一种优化前端性能的常见最佳实践。

2. 为什么需要它? (The "Why")

将 script 标签放置在 </body> 结束标签之前主要有以下几个原因,都与提升页面加载性能和用户体验相关:

3. API 与用法 (API & Usage)

此知识点不涉及具体的 JavaScript API,而是对 HTML script 标签的放置策略。核心用法是:

将所有非异步加载的 script 标签放置在 </body> 结束标签之前,即 HTML 文件的末尾。

经典代码示例:

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>HTML 页面结构</title>
    <link rel="stylesheet" href="style.css">
    <!-- 建议将 CSS 放在 head 中 -->
</head>
<body>
    <header>
        <h1>页面标题</h1>
    </header>

    <main>
        <p>这是一个页面的主要内容。</p>
        <div>
            <img src="image.jpg" alt="示例图片">
        </div>
    </main>

    <footer>
        <p>&copy; 2023 版权所有</p>
    </footer>

    <!-- 
        强烈建议将 script 标签放在这里,body 的末尾。
        这将允许 HTML 结构和 CSS 样式先加载并渲染,
        然后再下载和执行 JavaScript 脚本。
    -->
    <script src="main.js"></script>
    <script>
        // 行内脚本也可以放在这里
        console.log("脚本已执行");
    </script>

</body>
</html>

注意: 现代前端开发中,引入了 async 和 defer 属性来更好地控制脚本的加载和执行,这为 head 中放置 script 提供了可行性,且不阻塞 HTML 解析:

4. 关键注意事项 (Key Considerations)

5. 参考资料 (References)


原文链接与附件索引