node.js(2)require()函数加载模块

node.js模块

nodejs中require加载模块式同步的,只有前面的模块加载完毕才会加载后面的模块

从第一个模块开始依次向下执行,一个一个的进行加载

模块分类:

1、内置模块、核心模块、原生模块,都是一个意思,指node.js自带的模块,node.js安装完成之后就已经编译完毕,可以直接加载运行,速度最快

 

2、第三方模块,从npm上下载的模块,第三方写好之后上传到npm仓库上的模块,我们自己写的模块上传到npm之后也可以成为的第三方模块

3、文件模块,我们自己写的模块,node.js可以加载文件,按照文件后缀来加载,

注意:内置模块在node.js安装之后就已经编译好了,部分模块甚至已经加载好了,所以运行速度最快,第三方模块和文件模块由于还有进行加载编译过程之后才能执行,因此相对较慢

模块加载原理:

模块加载过程:

如果加载的模块路径+名称+文件后缀名齐全,则会将相对路径改为绝对路径直接加载该路径下的对应的文件

如果只有路径文件名,不带文件后缀,查找顺序,依次是index.js->index.json->index.node->index文件夹(认为index是个包package)->index文件夹下的package.json文件,再去package.json中找main对应的app.js主入口文件,再根据index名称依次匹配 .js 、.json、 .node文件,如果没有,则加载失败

所以,require加载模块时要写路径和文件名称以及文件类型后缀,以提高加载效率

require模块加载注意点:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值