Nodejs Module

我们编写了一个hello.js文件,这个hello.js文件就是一个模块,模块的名字就是文件名(去掉.js后缀),所以hello.js文件就是名为hello的模块。

我们把hello.js改造一下,创建一个函数,这样我们就可以在其他地方调用这个函数:

1
2
3
4
5
6
7
8
9
'use strict';

var s = 'Hello';

function greet(name) {
console.log(s + ', ' + name + '!');
}

module.exports = greet;

函数greet()是我们在hello模块中定义的,你可能注意到最后一行是一个奇怪的赋值语句,它的意思是,把函数greet作为模块的输出暴露出去,这样其他模块就可以使用greet函数了。

  • 结论

要在模块中对外输出变量,用:

module.exports = variable;
输出的变量可以是任意对象、函数、数组等等。

要引入其他模块输出的对象,用:

var foo = require(‘other_module’);
引入的对象具体是什么,取决于引入模块输出的对象。