模块加载机制
- 包是更好的组织功能的代码结构
- 当前指定一个文件夹,会将文件夹内的index.js作为程序的入口 3
- 如果当前目录下有一个和文件夹同名的文件,优先加载文件 1
- 如果当前目录下有一个和文件夹同名的json文件,优先加载json 2
- 对于文件的加载,顺序是,如果你写上./xxx,优先会加载xxx.js/xxx.json/xxx.node
- 加载优先级,例如: ./abc
- 1:先检查当前目录下./abc目录中的package.json文件的main属性,满足就立刻加载
- 2:加载当前路径下的./abc.js/json/node
- 3:加载./abc目录中的index.js
包的加载机制
- 先从当前路径下寻找node_modules目录下方是否有该包名
- 如果没有,逐级向上查找node_modules目录下方该包名,直到查找到盘符根目录
- 如果在C盘下有node_modules目录下面有这个包,那么在C盘下面任何文件及子文件夹内的文件都能使用