JS 模块
ESM(在浏览器中使用)
// 一般我们只会在 js 文件中 export 导出内容
// 因为在 <script> 中导出没有意义,无法指定 import 的来源(from)
// 导出一个值,不是很常用
export const value = 1;
// 导出函数
export function sum(a, b) {
return a + b;
}
// 导出函数的另一种写法,注意大括号是必须的
// 可以使用 as 起一个别名
function max(a, b) {
return a > b ? a : b;
}
export { max as local_max };
// 默认的导出内容,这里是一个对象
// 默认导出内容只能有一个
export default {
name: 'Me',
};
// import 导入,必须在 <script type="module"> 中使用
// 这里也要加上大括号,类似解构的语法
import { value as module_value, sum, local_max } from './main.js';
// 不使用大括号就是导入默认的内容
import xxx from './main.js';
CommonJS(在 Node.js 中使用)
// 导出
module.exports = {
a: 1,
b: 2,
};
module.exports.c = 3;
// 导入 CommonJS 导出的内容
const module_exports = require('./main.js'); // { a: 1, b: 2, c: 3 }