ES6:即 ECMAScript 6,是 JavaScript 语言的重要版本更新,引入了众多新的语法和特性,如箭头函数、模板字符串、类、模块等,使 JavaScript 编程更加简洁和强大。
ESM:全称 ECMAScript Modules,是 ES6 引入的模块系统。使用 import 和 export 语句来明确模块之间的依赖关系和模块的对外接口。
CommonJS:是 Node.js 中常用的模块规范。通过 require 函数来加载模块,并通过 module.exports 或 exports 对象来导出模块的内容。
import:在 ESM 中,import 用于从其他模块导入所需的功能或数据。例如:import myFunction from './myModule'; 表示从 './myModule' 模块导入 myFunction 。
export:在 ESM 中,export 用于将模块内的内容暴露给其他模块使用。可以直接导出变量、函数、类等,例如:export const myVariable = 42; 或者 export function myFunction() {... } 。
require:在 CommonJS 中,require 用于加载和引入其他模块。例如:const myModule = require('./myModule'); 。
总的来说,ES6 的模块系统(ESM)和 CommonJS 模块规范在语法和使用方式上有所不同,但都旨在实现模块的分离和复用,提高代码的可维护性和可扩展性。