1、概述

ES6 模块的设计思想,是尽量的静态化,使得编译时就能确定模块的依赖关系,以及输入和输出的变量。

 



// ES6模块
import { stat, exists, readFile } from 'fs';


 

上面代码的实质是从​​fs​​模块加载 3 个方法,其他方法不加载。这种加载称为“编译时加载”或者静态加载,即 ES6 可以在编译时就完成模块加载,效率要比 CommonJS 模块的加载方式高。当然,这也导致了没法引用 ES6 模块本身,因为它不是对象。

 

2、兼容性

浏览器目前还不支持 ES6 模块,需要将其将转为 ES5 的写法。


作者:孟繁贵