02-Node模块系统概览
[toc]
3.1 Node模块系统概览
Node保持了精简的基本实现。开发人员通过模块来提供额外的功能,而不是将所有可能用到的组件都集成在一起。
Node模块系统遵循一种模式,在这种模式下,被创建的模块可以实现互相引用,这个模式叫作CommonJS模块系统。这个系统的核心在于,只要开发人员遵循一定的规则,他们的模块就可以和别的模块互相兼容。
CommonJS模块系统对Node模块有以下要求。
- 需要支持require函数,这个函数会获取模块的id,并返回模块所提供的API。
- 模块名称是一个字符串,可以包含正斜线(用于标记路径)。
- 模块必须显式输出需要被暴露在模块之外的内容。
- 模块内的变量都是私有的。
有些 Node 函数是全局的,意味着你可以直接使用,而不需要引用它。但是Node的大部分功能都是通过模块系统集成的。