JavaScript 的三种引入方法详解

简介: 在网页开发中,JavaScript 可通过内联、内部脚本和外部脚本三种方式引入 HTML 文件,各具适用场景。本文详解其用法并附完整示例代码,帮助开发者根据项目需求选择合适的方式,提升代码维护性与开发效率。

在网页开发中,JavaScript 可以通过不同的方式引入到 HTML 文档中,每种方式都有其适用场景。本文将详细介绍三种种常用的 JavaScript 引入方法,并提供完整的演示代码。

1.内联方式(Inline)
内联方式是将 JavaScript 代码直接写在 HTML 标签的事件属性中,如 onclick、onload 等。这种方式通常用于简单的交互逻辑。

完整示例代码:

<!DOCTYPE html>
<html lang="zh-CN">
<head>
    <meta charset="UTF-8">
    <title>内联方式引入JS</title>
</head>
<body>
    <h1>内联方式引入JavaScript示例</h1>

    <!-- 内联事件处理器 -->
    <button onclick="alert('按钮被点击了!这是内联JS效果')">
        点击我(内联JS)
    </button>

    <p onmouseover="this.style.color='red'" onmouseout="this.style.color='black'">
        鼠标移到我上面会变色(内联JS效果)
    </p>
</body>
</html>

特点:

代码直接写在 HTML 标签内
适合非常简单的交互逻辑
不便于代码复用和维护
会导致 HTML 和 JavaScript 代码混杂

2.内部脚本(Internal)
内部脚本是将 JavaScript 代码写在 HTML 文档的 script 标签内,通常放在 head 或 body 中。

完整示例代码:

<!DOCTYPE html>
<html lang="zh-CN">
<head>
    <meta charset="UTF-8">
    <title>内部脚本引入JS</title>

    <!-- 内部脚本,放在head中 -->
    <script>
        // 页面加载完成后执行
        window.onload = function() {
   
            console.log('页面加载完成!');
            showWelcomeMessage();
        }

        function showWelcomeMessage() {
   
            alert('欢迎访问本页面!这是内部JS效果');
        }
    </script>
</head>
<body>
    <h1>内部脚本引入JavaScript示例</h1>

    <button onclick="changeText()">点击修改文本</button>
    <p id="demo">这是一段可以被修改的文本</p>

    <!-- 也可以在body底部放置script标签 -->
    <script>
        function changeText() {
   
            document.getElementById('demo').innerHTML = '文本已被内部JS修改!';
            document.getElementById('demo').style.color = 'blue';
        }
    </script>
</body>
</html>

特点:

代码集中在 script 标签内
可以在同一个 HTML 文件中多次使用
适合中等复杂度的脚本
仍然与 HTML 文档混合在一起

3.外部脚本(External)
外部脚本是将 JavaScript 代码写在独立的 .js 文件中,然后在 HTML 文档中通过 script 标签的 src 属性引入。这是最推荐的方式。

完整示例代码:

首先创建 JavaScript 文件 external-script.js:

<!DOCTYPE html>
<html lang="zh-CN">
<head>
    <meta charset="UTF-8">
    <title>外部脚本引入JS</title>
    <!-- 引入外部JS文件 -->
    <script src="external-script.js" defer></script>
</head>
<body>
    <h1>外部脚本引入JavaScript示例</h1>

    <button id="externalBtn">点击我(外部JS)</button>
    <div id="message"></div>

    <!-- 也可以在body底部引入 -->
    <!-- <script src="external-script.js"></script> -->
</body>
</html>

特点:

代码与 HTML 完全分离,便于维护
可以在多个页面中复用同一个 JS 文件
浏览器可以缓存外部 JS 文件,提高加载速度
适合大型项目和复杂逻辑
通过 defer 或 async 属性可以控制加载和执行时机

总结
三种引入方式各有优缺点,选择哪种方式取决于项目需求:

内联方式:适用于非常简单的交互,不推荐大量使用
内部脚本:适用于中小型页面,逻辑相对简单的情况
外部脚本:是最佳实践,适用于大多数项目,特别是需要代码复用和维护的场景

在实际开发中,应尽量采用外部脚本的方式,保持 HTML 和 JavaScript 代码的分离,提高代码的可维护性和复用性。

相关文章
|
定位技术
Echarts使用geojson地理坐标地图地名label标签位置不居中调整的解决方案
Echarts使用geojson地理坐标地图地名label标签位置不居中调整的解决方案
961 0
|
XML 缓存 运维
springboot注解(全)
springboot注解(全)
943 0
|
JavaScript Windows
Cocos Creator3.8 项目实战(十)使用 protobuf详细教程
Cocos Creator3.8 项目实战(十)使用 protobuf详细教程
2042 0
|
9月前
|
供应链 BI
OA、CRM、ERP,到底有啥区别?
本文深入解析了企业在数字化过程中常见的OA、CRM、ERP三大系统的功能与选型逻辑。OA系统聚焦内部流程与员工管理,适用于考勤、报销等行政事务;CRM专注客户与销售管理,适合需要跟进客户、提升成交率的企业;ERP则侧重企业核心业务,如采购、库存、财务等。文章结合企业不同发展阶段和关注重点,给出了系统的优先级选择建议,帮助企业明确数字化转型的路径。
|
前端开发 JavaScript
原生实现环形进度条
原生实现环形进度条
601 121
|
前端开发 JavaScript 索引
【前端】Object.keys()的使用方法及数组遍历,Object.keys(object).forEach(e => {您的代码})
【前端】Object.keys()的使用方法及数组遍历,Object.keys(object).forEach(e => {您的代码})
361 0
|
存储 缓存 前端开发
如何将 JavaScript 添加到 HTML 页面
如何将 JavaScript 添加到 HTML 页面
370 0
html页面点击按钮实现页面跳转功能
html页面点击按钮实现页面跳转
2021 11
|
JavaScript
vue3,使用watch监听props中的数据
【10月更文挑战第3天】
4151 2
|
前端开发 JavaScript 数据安全/隐私保护
前端JS正则校验密码之3种实现方式
这篇文章展示了三种使用JavaScript正则表达式来校验密码的方法,密码需要满足包含大写字母、小写字母、数字及特殊字符,并在8到16位之间,同时提供了示例代码和实现效果。
869 1
前端JS正则校验密码之3种实现方式