NodeJS学习笔记
1. exports变量
为了方便,Node为每个模块提供一个exports变量,指向module.exports。这等同在每个模块头部,有一行这样的命令。
1 | var exports = module.exports; |
- 注意,不能直接将exports变量指向一个值,因为这样等于切断了exports与module.exports的联系。
- 如果模块输出的是一个函数,那就不能定义在exports对象上面,而要定义在module.exports变量上面。
2. require命令
require命令的基本功能是,读入并执行一个JavaScript文件,然后返回该模块的exports对象。如果没有发现指定模块,会报错。
- require命令调用自身,等于是执行module.exports
- require命令用于加载文件,后缀名默认为.js。如果指定的模块文件没有发现,Node会尝试为文件名添加.js、.json、.node后,再去搜索。.js件会以文本格式的JavaScript脚本文件解析,.json文件会以JSON格式的文本文件解析,.node文件会以编译后的二进制文件解析。如果想得到require命令加载的确切文件名,使用require.resolve()方法。
3. 环境变量NODE_PATH
Node执行一个脚本时,会先查看环境变量NODE_PATH。它是一组以冒号分隔的绝对路径。在其他位置找不到指定模块时,Node会去这些路径查找。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 お前はどこまで見えている!
评论
WalineTwikoo