JS模块的导出和导⼊之export和port的区别转载⾃ JS模块的导出和引⼊
在js编程中经常会有模块的导出导⼊,涉及到⼀些导⼊导出关键字
导出关键字
原生js和js的区别ports
exports
export
export default
导⼊关键字
require
const xxx = require("模块名")
import
import { xxx } from "模块名"
import xxx from "模块名"
import xxx1, {xxx2, xxx3,...} from "模块名"
import * from "模块名"
因为在实际开发中经常会混淆这些⽤法,所以想要弄清楚这些的区别,让⾃⼰明⽩⾃⼰到底在写什么。本⽂作为学习笔记输出。
模块规范
JS模块化编程分了两种规范:CommonJS模块规范和ES6模块规范。
CommonJS模块规范 —— CommonJS规范中,以ports导出接⼝,以require引⼊模块
ES6模块规范 —— ES6标准规范中,以export指令导出接⼝,以import引⼊模块
在Node.js编程中,Node模块系统遵循的是CommonJS规范。
CommonJS模块规范
CommonJS规范规定: 每个js⽂件就是⼀个模块,有⾃⼰的作⽤域。
在⼀个⽂件⾥⾯定义的变量、函数、类,都是私有的,对其他⽂件不可见。
如果要暴露给其他程序,需要以ports导出接⼝,以require引⼊模块。
模块导出的时候,导出的是ports,不是exports

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。