在 node.JS 中 modules(模块) 与文件是一一对应的, 也就是说一个 node.JS 文件就是一个模块, 文件内容可能是我们封装好的一些 JavaScript 方法, JSON 数据, 编译过的 C/C++ 拓展等, 在关于 node.JS 的误会提到过 node.JS 的架构. 其中 http,fs.NET 等都是 node.JS 提供的核心模块, 使用 C/C++ 实现, 外部用 JavaScript 封装.
node.JS 中使用 CommonJS 规范实现模块功能, 一个单独的文件就是一个单独的模块. 通过 require 方法实现模块间的依赖管理. 通过 require 加载模块, 是同步操作.
node.JS 的模块分类:
1, 核心模块, 编译二进制, 加载速度最快, 像 fs,http,events 等.
2, 文件模块, 保存在硬盘上, 加载速度比较慢, 通过名称或路径来加载.
3, 第三方模块, 只指定名称则从 node_modules 目录下加载, 查询的路径包括 module.paths 和全局目录.
全局目录:
Windows 中: 环境变量 NODE_PATH 指定的路径.
Linux 中:$HOME/.node_modules 和 $HOME/.node_libraries 目录
来源: http://www.css88.com/qa/node-js/10587.html