module.exports 初始值為一個(gè)空對(duì)象 {}
exports 是指向的 module.exports 的引用
require() 返回的是 module.exports 而不是 exports
我們經(jīng)常看到這樣的寫(xiě)法:
exports = module.exports = somethings
上面的代碼等價(jià)于:
module.exports = somethingsexports = module.exports
原理很簡(jiǎn)單,即 module.exports 指向新的對(duì)象時(shí),exports 斷開(kāi)了與 module.exports 的引用,那么通過(guò) exports = module.exports 讓 exports 重新指向 module.exports 即可。