【ES6】CommonJS模块和ES6模块

在JavaScript中,模块是一种将功能代码组织成逻辑单元的方式,以便在其他项目中重复使用。有两种主要的模块系统:CommonJS和ES6。

1、CommonJS

在CommonJS中,我们使用require来引入模块,使用module.exports来导出模块。

下面是一个简单的例子:

// math.js
exports.add = function (a, b) {
  return a + b;
};

然后,在另一个文件中,我们可以使用require来引入这个模块:

// app.js
var math = require('./math');
console.log(math.add(1, 2)); // 输出 3

2、ES6模块

ES6引入了新的模块系统,它支持导入和导出模块。下面是ES6模块的一个例子:

// math.js
export function add(a, b) {
  return a + b;
};

然后,在另一个文件中,我们可以使用import来引入这个模块:

// app.js
import { add } from './math';
console.log(add(1, 2)); // 输出 3

总的来说,CommonJS和ES6模块的主要区别在于语法、加载方式和只读性。CommonJS是运行时加载,ES6是编译时加载;CommonJS模块输出的是值的拷贝,ES6模块输出的是值的引用;此外,CommonJS模块是可读写的,而ES6模块是只读的

你可能感兴趣的:(es6,javascript,前端)