使用Node.js需要与ES6导入/导出
在我正在合作的一个项目中,我们有两种选择我们可以使用的模块系统:
require
,并利用出口module.exports
和exports.foo
。 import
导入模块,并使用ES6 export
使用其中一个有什么性能好处? 如果我们使用Node6上的ES6模块,还有什么我们应该知道的吗?
使用其中一个有什么性能好处?
请记住,目前还没有支持ES6模块的JavaScript引擎。 你自己说过你在使用Babel。 无论如何, module.exports
默认将import
和export
声明转换为CommonJS( require
/ module.exports
)。 所以,即使你使用ES6模块语法,如果你在Node中运行代码,你也会在后台使用CommonJS。
CommonJS和ES6模块之间存在技术差异,例如CommonJS允许您动态加载模块。 ES6不允许这样做,但是有一个API正在开发中。
由于ES6模块是标准的一部分,我会使用它们。
您可能需要考虑几种用法/功能:
要求:
require
,它们将被逐个加载和处理。 ES6进口:
另外,Require模块系统不是基于标准的。 现在ES6模块的存在几乎不可能成为标准。 未来将会有各种实现方式的ES6模块的本地支持,这在性能方面将是有利的。
主要优点是句法:
您不太可能看到ES6模块带来的任何性能优势。 即使在浏览器中完全支持ES6功能,您仍然需要额外的库来捆绑模块。
链接地址: http://www.djcxy.com/p/52195.html