node.js模块化

Node.js 提供了 exports 和 require 两个对象,其中 exports 是模块公开的接口,require 用于从外部获取一个模块的接口,即所获取模块的 exports 对象。

1.模块化

每个模块内部有一个自己的module对象
module有个成员exports 也是一个对象

2.模块之间如何协同
  • 使用require引入
  • 引入的本质是引用文件
  • 导入的是文件夹,去找哪些文件
    先找package.json main属性对应的文件
    找不到找index.js
3.模块加载
  • 本质
    就在加载js文件
  • 寻找文件顺序
    1.缓存
    使用这个模块,我们主要是为了使用导出的对象
    构建这个对象的过程,只执行一次
    引入一次之后就会把这个对象放入缓存中
    防止模块的重复加载
    提高模块引入的效率
    2.核心模块
    任何一个第三方模块都不会和核心模块重名
    3.自定义模块
    加上 ./ 路径
    4.第三方模块
    当前目录node_modules文件(一个项目中有且仅有一个)
    找不到再去父级找node_modules
    5.都没找到就会报错
  • 执行文件
    如果是缓存的话就不会执行
    加载这个模块
  • 返回模块暴露的对象
    module.exports
    exports是module.exports的浅拷贝
4.模块化好处
  • 减少命名冲突
  • 提高代码的可维护性和灵活性
  • 提升代码的复用率
  • 高内聚 低耦合
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值