CommonJS - nodejs自带的模块化规范

nodejs中自带的模块化规范,只能在nodejs中使用,导出使用module.exports关键字,导入使用require关键字。

使用commonjs规范导入导出模块:

导入:

// 导入
require(被导入的模块)

导出:

// 导出
module.exports = {数据}
module.exports.键 = 值
exports.键 = 值

一个文件就是独立的模块,可以理解为是一个独立的作用域,别的模块要用到这个作用域中的数据,就需要将这个作用域中的数据导出,可以理解为函数返回数据的意思。

a.js导出:

let a = 10
module.exports = a // 数据a就被导出了 - 这种导出方式只能导出一个数据
module.exports = {a} // 对象被导出了 - 通常要导出多个数据就使用这种导出方式
module.exports.a = a // 导出了一个对象 - 这种导出方式可以在多个地方导出数据

为了让导出变的更简单,commonjs规范中,在每个模块中定义了一个变量exports,并将module.exports赋值给了exports,导出时可以使用exports:

exports = {a}
exports.a = a

注意:使用exports导出的时候,千万不能直接给exports赋值,因为导出功能是由module.exports提供的,如果直接给exports赋值,就将exports的内存空间换成了另外一个数据空间了,将失去导出功能。

b.js导入:

let data = require('./a.js')

导入的就是导出的数据,导出数据就接收到数据,导出对象就接收到对象。

注意:导入的文件是自定义的,那路径中的`./`是不能被省略的。导入文件的后缀可以省略,因为nodejs中能被导入的只能是js文件。

在nodejs中能被导入的模块分3种:

1. 自定义模块 - 文件路径中的`./`不能省略
2. 内置模块 - 只需要导入模块名称,不需要路径,因为默认会在系统中找这个文件
3. 第三方模块 - 别人写好的js文件,我们需要导入使用,所以必须提前下载好才能被导入使用

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值