exports 和 module.exports 你要了解一些概念和为什么

默认导出空对象:

  1. 在没有任何内容导出的时候,默认会导出 module.exports 一个空对象 “{}”
  2. require获取文件路径时,可以不加后缀名,默认的后缀名是"js"
    在这里插入图片描述

exports 和 module.exports 相等原因

  1. 系统默认设置:exports = module.exports ,把exports 的内存地址指向module.exports的内存地址
  2. 这两个导出都是在同一个对象里面,说明 exportsmodule.exports 指向的是同一个对象
    在这里插入图片描述

修改导出的值,结果无变原因

  1. 在导出后,我们把 exports = {name:'小江'} 重新赋值,发现改了后发现结果并无变化
  2. 原因是系统默认导出找的是 module.exportsmodule.exports 的值还是 {a:1,c:3}

在这里插入图片描述

修改导出的值,如何才能改变结果?

既然修改exports不能改变值,那就修改module.exports 的值看看能不能改成功?
系统看的是module.exports,修改了 module.exports的值 结果是肯定会改变

在这里插入图片描述

exports和module.exports 使用注意

  1. 使用exports时,只能单个设置属性 exports.a = a;

在这里插入图片描述

  1. 使用module.exports时,可以单个设置属性,也可以整个赋值 (只是做演示)

    要是直接给 module.exports 赋值,会覆盖掉前面设置 module.exports 的值

在这里插入图片描述

模块初始化

  1. 一个模块中的JS代码仅仅在模块第一次被使用时执行一次,并且在使用的过程中进行初始化,之后缓存起来便于后续继续使用

在这里插入图片描述




举例子

导出的例子已包含了工作中的场景
在这里插入图片描述

在这里插入图片描述
一个js文件里 只导出一个函数或者变量 可以使用 export default { }
一个js文件里 放了很多接口api功能导出 可以使用 exoprt function api() { }
导入导出 使用方法灵活多变 根据实际场景来使用

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

前端酱紫

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值