nodejs模块系统
Node.js 提供了 exports 和 require 两个对象,其中 exports 是模块公开的接口,require 用于从外部获取一个模块的接口,即所获取模块的 exports 对象。
实例:
在hello.js中通过 exports 对象把 world 作为模块的访问接口:
在app.js引入hello.js模块:
结果:
2. 有时候我们只是想把一个对象封装到模块中,格式如下:
module.exports = function() { // ... }
实例:
结果:
所以:如果要对外暴露属性或方法,就用 exports 就行,要暴露对象(类似class,包含了很多属性和方法),就用 module.exports。
require方法接受以下几种参数的传递:
- http、fs、path等,原生模块。
- ./mod或../mod,相对路径的文件模块。
- /pathtomodule/mod,绝对路径的文件模块。
- mod,非原生模块的文件模块。