1. require的作用是什么?
通过require,可以在当前模块中引入(加载)另一个模块
2. 模块的分类
自定义模块
即用户自己编写的模块,引入方法var obj = require('./test.js');
注意点:
a. 自定义的模块如果没有通过exports
或module.exports
暴露对象,则会返回空对象
b. 引入自定义模块要注意路径要加./
或../
,使用相对路径,因为node.js默认的目录是node.modules文件夹。比方想要引入自定义模块,使用require('test.js')
则会去node.modules文件夹下找,而你的自定义模块可能没放在这个文件夹下,而是放在当前模块同个目录下。第三方模块
通过npm或cnpm(淘宝镜像)在npm社区下载写好的模块,安装后会自动放在node.modules文件夹下,故
引入方式为var obj = require('模块名');
系统模块
node.js团队自己开发的模块,在安装node的时候自带的。如fs,url,path,http等
使用require('模块名');
3. 注意事项
- 引入的模块中有语法错误,会报错
- 找不到引入模块会报错
- 模块被多次引用,只执行一次,因为第一次加载模块的时候就会将模块暴露的对象放在内存中,方便下次的使用。