1. 核心模块
Node为js提供了很多服务器级别的API,这些API绝大多数都被包装到了一个具名的核心模块中。比如:文件操作的fs核心模块,http服务构建的http模块,path路径操作模块,os操作系统信息模块等。都是通过
require('fs');
进行引入后使用。
2.模块系统
-
Node中,模块有三种
- 具名的核心模块,例如:fs,path
- 用户自定义模块
- 引入的相对路径必须加./,不能省略,否则报错
- 可以省略后缀名,默认访问js文件
- 第三方模块
-
作用域
- Node中没有全局作用域,只有模块作用域
- 外部访问不到内部
- 内部访问不了外部
- 默认是封闭的
- 模块之间的通信通过require返回值实现
-
require()
-
作用:加载模块,为了执行模块里面的代码以及使用其内的成员
-
返回值:加载文件模块导出的接口对象
-
每个文件模块中都提供了一个对象:exports对象,用于与外界模块之间进行通信,将外部需要访问的数据通过挂载在exports对象上进行使用
-
exports默认是一个空对象
// a.js exports.num = 1;// 导出变量num // b.js var ex = require('./a');// 接收到处接口对象ex console.log(ex.num);// 使用对象上挂载的数据
-
注:
- 挂载在exports上面的数据,在被加载模块上也可以通过exports来使用。
-