node的模块系统作用是显而易见了,下面列出两条相关注意事项。
1,如果模块是目录,那该模块目录的文件必须命名为“index.js”,除非该模块目录中包含“package.json”文件。为了代替“index.js”,“package.json”文件必须包含key值为“main”的json数据,且“main”的value值为该模块目录。
package.json文件指向小例:
{ “main” : “./currency.js” }
2,node缓存模块为对象。如果两个文件需要引入同一个模块,第一个require将保存数据到应用内容中,以至于第二次require的时候不用到模块的源文件去找。事实上,第二次require将直接获取缓存的数据。这种“monkey patching”【补丁】能力允许一个模块去改变另一个行为--开发人员避免建立新的版本。