//utils.js
let a = 100; console.log(module.exports); //能打印出结果为:{}
console.log(exports); //能打印出结果为:{} exports.a = 200; //这里辛苦劳作帮 module.exports 的内容给改成 {a : 200} exports = '指向其他内存区'; //这里把exports的指向指走 //test.js var a = require('/utils');
console.log(a) // 打印为 {a : 200}复制代码

从上面可以看出,其实require导出的内容是module.exports的指向的内存块内容,并不是exports的。
简而言之,区分他们之间的区别就是 exports 只是 module.exports的引用,辅助后者添加内容用的。

用白话讲就是,exports只辅助module.exports操作内存中的数据,辛辛苦苦各种操作数据完,累得要死,结果到最后真正被require出去的内容还是module.exports的,真是好苦逼啊。

其实大家用内存块的概念去理解,就会很清楚了。

然后呢,为了避免糊涂,尽量都用 module.exports 导出,然后用require导入。

最新文章

  1. JSP 中 pageEncoding 和 charset 区别以及中文乱码解决方案
  2. Population Mean
  3. ICE系列之2——ICE的服务与好处
  4. 轻量级SaaS在线作图工具(继之前介绍后完整介绍)
  5. JAVA基础学习day27--反射机制
  6. python开发规则
  7. HTML/CSS的学习过程一览
  8. UIActionSheet
  9. 重装eclipse要做的事
  10. android studio gradle自动签名构建实现
  11. Recall(召回率);Precision(准确率);F1-Meature(综合评价指标);true positives;false positives;false negatives.
  12. SQL Server 动态行转列(轉載)
  13. Java学习之道:空指针错误求解救????????????
  14. [JavaScript权威指南 [笔记]
  15. jsp内置对象-out对象
  16. (PAT)L2-004 这是二叉搜索树吗?(数据结构)
  17. windows mysql 的myini
  18. python之正则表达式及RE模块
  19. Android -- 自定义ViewGroup实现FlowLayout效果
  20. 【计算机视觉】seetaFace

热门文章

  1. Django框架(十)—— 多表操作:一对一、一对多、多对多的增删改,基于对象/双下划线的跨表查询、聚合查询、分组查询、F查询与Q查询
  2. 52-Ubuntu-打包压缩-2-打包/解包
  3. python学习笔记(十)——正则表达式和re模块
  4. ZMQ相关
  5. __stdcall,__cdecl,__fastcall,_stdcall,_cdecl,_fastcall 区别简介[转]
  6. BCZM: Chapter 2
  7. CSS四种定位及应用
  8. thinkphp 多语言支持
  9. Android中的广播Broadcast详解
  10. python 列表 实现队列