export与exports、import与require区别与联系
发布网友
发布时间:2022-11-27 16:37
我来回答
共1个回答
热心网友
时间:2023-10-17 10:22
一、区别于联系
1.mole.exports、exports、require是属于CommonJS模块规范。
2.export、export default、import是属于ES6语法
3.mole.exports和exports、export和export default都是导出模块。
4.import和require则是导入模块。
5.mole.exports导出对应require导入,export导出对应import导入
二、CommonJS规范(exports与require)
Node应用由模块组成,采用CommonJS模块规范。
根据这个规范,每个文件就是一个模块,有自己的作用域。在一个文件里面定义的变量、函数、类,都是私有的,对其他文件不可见。
CommonJS规范规定,每个模块内部,mole变量代表当前模块。这个变量是一个对象,它的exports属性(即mole.exports)是对外的接口。加载某个模块,其实是加载该模块的mole.exports属性。
require方法用于加载模块。
三、ES6语法(export、export default、import)
模块功能主要由:export和import构成。export导出模块的对外接口,import命令导入其他模块暴露的接口。
export其实和export default就是写法上面有点差别,一个是导出一个个单独接口,一个是默认导出一个整体接口。使用import命令的时候,用户需要知道所要加载的变量名或函数名,否则无法加载。这里就有一个简单写法不用去知道有哪些具体的暴露接口名,就用export default命令,为模块指定默认输出。