###1.1模塊的分類
```模塊分為核心模塊揽祥、文件模塊煤辨,其中包是一種特殊的文件模塊 ```
- 核心模塊
+ fs file system
+ http
+ os
+ path
+ querystring
+ url
###1.2模塊三兄弟 require济榨、module盯捌、exports
- require的實現(xiàn)原理
```把代碼從文件中讀出來收毫,用匿名函數(shù)的方式頭尾包裝辰企,返回modules.exports對象闸昨,曝露出想要曝露出來的屬性蚯斯、方法、對象饵较。
補充了exports是指向modules.exports的一個指針拍嵌,exports能做的,modules.exports都能做的循诉。
```
- require查找文件横辆、包原理
```.js、.node打洼、.json依次幫你補足,
第二次加載的時候優(yōu)先從緩存查找讀取逆粹,
node_modules中沒有的募疮,從父文件夾中查找,如果沒有僻弹,直到根目錄為止
```
- module
```
里面保存了模塊的信息路徑阿浓、父子信息、曝露出的對象信息
```
- exports
```
module.exports 別名
module.exports=123;已經(jīng)使用過一次了蹋绽,exports就不生效了
module.exports.a=12;這樣使用,exports是還可以使用的
```
###1.4包
```
package.json是包的說明書芭毙,
dependencies當(dāng)前包所依賴的包:>筋蓖、<、>=退敦、<=粘咖、~、*侈百、" "瓮下、X、^钝域、
devDependencies 開發(fā)環(huán)境中包所依賴的包:
```