ES6自定义模块

在ES6中,我们可以使用 exportimport 关键字来定义和使用自定义模块。

定义模块

导出(export)
  1. 命名导出(Named Exports)

    使用 export 关键字来导出模块中的变量、函数、类等。例如:

    javascript 复制代码
    // mathUtils.js
    export const sum = (a, b) => a + b;
    export const subtract = (a, b) => a - b;

    这里我们导出了 sumsubtract 函数。

  2. 默认导出(Default Export)

    使用 export default 关键字可以导出模块的默认值,一个模块只能有一个默认导出。例如:

    javascript 复制代码
    // utils.js
    const multiply = (a, b) => a * b;
    export default multiply;

    这里我们默认导出了 multiply 函数。

使用模块
导入(import)

使用 import 关键字来引入其他模块导出的内容。

  1. 命名导入(Named Imports)

    引入命名导出的变量、函数等。例如:

    javascript 复制代码
    // app.js
    import { sum, subtract } from './mathUtils';
    
    console.log(sum(5, 3)); // 输出 8
    console.log(subtract(5, 3)); // 输出 2
  2. 默认导入(Default Imports)

    引入默认导出的内容。例如:

    javascript 复制代码
    // app.js
    import multiply from './utils';
    
    console.log(multiply(5, 3)); // 输出 15
  3. 混合导入(Mixing Named and Default Imports)

    可以同时导入命名导出和默认导出。例如:

    javascript 复制代码
    // app.js
    import multiply, { sum } from './utils';
    
    console.log(sum(5, 3)); // 输出 8
    console.log(multiply(5, 3)); // 输出 15

注意事项

  • exportimport 必须在顶层作用域使用,不能嵌套在函数或条件语句中。
  • 导入路径可以是相对路径或者绝对路径。
  • 模块的导出和导入是静态的,意味着在编译阶段就确定了导入模块的内容。

使用ES6模块系统能够帮助我们更好地组织和管理JavaScript代码,提高代码的可维护性和可重用性。

相关推荐
醇氧2 小时前
CountDownLatch / CyclicBarrier / Semaphore 面试高频问答清单
前端·面试·职场和发展
qetfw3 小时前
MXU:Tauri 2 + React 的 MaaFramework 跨平台 GUI 源码
前端·python·react.js·前端框架·开源项目·效率工具
甲维斯3 小时前
我要开始吹牛逼了!Kimi K3 “宇宙无敌”!
前端·人工智能
a1117764 小时前
微光小屋-前端养成小游戏 开源项目
前端
kyriewen4 小时前
我让AI给前端项目做了一次完整的Code Review——它和人类的差距,比我想的大得多
前端·javascript·ai编程
张鑫旭4 小时前
快速过下我2026年上半年的前端学了些啥
前端
এ慕ོ冬℘゜4 小时前
前端基础:什么是时间戳?JS获取时间戳三种方法与实战用途
开发语言·前端·javascript
hoLzwEge4 小时前
拯救低效调试!code-inspector-plugin 让代码定位如虎添翼
前端·前端框架·node.js