位置: 编程技术 - 正文

详解Node.js中exports和module.exports的区别(node.js promise)

编辑:rootadmin

推荐整理分享详解Node.js中exports和module.exports的区别(node.js promise),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:nodejs yield,node中的ejs,node.js中的express,node js excel,node中的ejs,node expoter,node中的ejs,node.js ejs,内容如对您有帮助,希望把文章链接给更多的朋友!

今天看了下node.js的require方法的源码,终于搞清楚exports和module.exports的区别了。

我们知道,node.js的模块暴露有两种方法。

1. 方式一:用exports

2. 方式二:用module.exports

如果将第一种方式的exports按照第二种方式写成下面这样就会出错:

exports和module.exports的初始值指向的是空对象,即{}。从源码可以看到,其实模块的require方法实质上是调用了_load方法,而_load方法,最终返回的是module.exports

详解Node.js中exports和module.exports的区别(node.js promise)

来分析一下出错的原因。

由于最开始的时候,exports和module.exports都指向同一个对象。

第一种方式,是在给这个空对象{}添加属性,又因为module.exports也是指向这个对象的,所以最终require方法返回的module.exports是指向了这个具有log方法的对象的,可以引用到模块。

第二种方式是让module.exports指向一片新的内存空间,exports指向的仍然是{},但是由于require方法返回的是module.exports,所以最终也能引入模块。

但是最后那种写法是让exports指向一片新的内存空间,module.exports指向的仍然还是{},那么最终require方法是将module.exports返回,所以会导致报错,说s不是一个function。

所以:

请牢记:require方法返回的是module.exports!

标签: node.js promise

本文链接地址:https://www.jiuchutong.com/biancheng/379413.html 转载请保留说明!

上一篇:nodejs和C语言插入mysql数据库乱码问题的解决方法(nodejs来一打c++扩展)

下一篇:利用node.js本地搭建HTTP服务器(本地 node js 启动vue)

  • 牛奶的增值税税率
  • 增值税一般纳税人税率是多少?
  • 如何进行个人所得税认定
  • 积分换物品是真的吗
  • 税务局核定税种是什么意思
  • 社保可以抵扣什么税
  • 预缴所得税的计税依据
  • 财政补贴交不交印花税
  • 企业与政府土地合作开发模式
  • 汇总记账凭证会计核算组织形式适用于
  • 建筑公司支付给个人的劳务费计入什么科目
  • 进项交税吗
  • 捐赠财产
  • 投标公司资质借用计入什么会计科目?
  • 公司注销固定资产怎么处理税怎么交
  • 房地产开发企业预收款预缴增值税
  • 农牧业没有发票怎么办
  • 税控盘开票流程图解2022
  • 发票第一联盖章吗
  • 一般纳税人既有批发零售又有不动产租赁
  • 管理不善造成的损失怎么处理
  • 社会团体的费用包括哪些
  • 红魔3和一加7pro哪个好
  • 工程用的东西有什么
  • 房产税如何进行计提
  • 索尼vpcea200c笔记本
  • php静态变量生命周期
  • php current
  • 购买税盘怎么做分录
  • 绿萝怎么修剪才能更旺盛
  • 赊销商品属于什么信用
  • 微信怎么开小
  • php ftp函数
  • uniapp使用高德猎鹰服务
  • 所得税季报本月数是指
  • tls版本过低怎么办
  • css元素居中的几种方法
  • vue3 技巧
  • ai运行环境
  • 股东之间股权转让需要股东会决议吗
  • 小规模纳税人季度不超30万怎么做账
  • 转账收手续费不
  • 生产企业购入原材料
  • 新手任务税控设备申请
  • 个贷系统平账专户a户为啥扣钱
  • 建筑业跨区域预缴税款的计算
  • 补缴上一年度社保
  • 企业现金清查的主要内容有什么
  • 发票未及时开,但是双方会计已经做帐,怎么办?
  • 电商刷单返现如何做账务处理合适?
  • 房地产毛利额纳税调整
  • 筹建期间的利息费用计入什么科目
  • 现金日记账是会计人员根据审核后的
  • 建筑业异地预交税款最新规定
  • 网络销售还可以叫什么
  • 党建经费可以购买什么
  • 药品进销差价的计算公式是什么
  • 子公司的财务管理方法
  • 企业注销未分配是从注册开始吗
  • 自产产品赠送会计处理
  • mysql 修改配置
  • 简单谈谈设计与市场的关系
  • mysql 5.7.31安装
  • mac如何在桌面显示我的电脑
  • mac电脑自带软件介绍
  • centos中如何安装软件
  • windows找不到cmd怎么办
  • nddeagnt.exe - nddeagnt是什么进程 有什么用
  • 用<TABLE>语句来实现圆角表格可以省去制作圆角图片之苦!
  • linux 删除inode
  • python用while循环求π的值
  • vue router 传参
  • node.js django
  • shell脚本 -mtime
  • unity网络模块
  • npm与nodejs
  • 地方税收包含哪些
  • 机场停车票怎么取得
  • 房山税收减免政策文件
  • 税金乘以12%是什么
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设