1. require的作用是什么份名?
通過require,可以在當(dāng)前模塊中引入(加載)另一個(gè)模塊
2. 模塊的分類
自定義模塊
即用戶自己編寫的模塊妓美,引入方法var obj = require('./test.js');
注意點(diǎn):
a. 自定義的模塊如果沒有通過exports
或module.exports
暴露對(duì)象僵腺,則會(huì)返回空對(duì)象
b. 引入自定義模塊要注意路徑要加./
或../
,使用相對(duì)路徑壶栋,因?yàn)閚ode.js默認(rèn)的目錄是node.modules文件夾辰如。比方想要引入自定義模塊,使用require('test.js')
則會(huì)去node.modules文件夾下找贵试,而你的自定義模塊可能沒放在這個(gè)文件夾下琉兜,而是放在當(dāng)前模塊同個(gè)目錄下凯正。第三方模塊
通過npm或cnpm(淘寶鏡像)在npm社區(qū)下載寫好的模塊,安裝后會(huì)自動(dòng)放在node.modules文件夾下豌蟋,故
引入方式為var obj = require('模塊名');
系統(tǒng)模塊
node.js團(tuán)隊(duì)自己開發(fā)的模塊廊散,在安裝node的時(shí)候自帶的。如fs,url,path,http等
使用require('模塊名');
3. 注意事項(xiàng)
- 引入的模塊中有語法錯(cuò)誤梧疲,會(huì)報(bào)錯(cuò)
- 找不到引入模塊會(huì)報(bào)錯(cuò)
- 模塊被多次引用允睹,只執(zhí)行一次,因?yàn)榈谝淮渭虞d模塊的時(shí)候就會(huì)將模塊暴露的對(duì)象放在內(nèi)存中幌氮,方便下次的使用缭受。