node.js学习笔记(5) 模块

Node.js提供了一个简单的模块系统,可以让node.js的文件可以相互调用。模块是node.js应用程序的基本组成部分,文件与模块一一对应。也就是说一个文件就是一个模块,这些文件可以是javascript、json或者编译过的c/c++文件。模块调用有一个模块hello.js: ex...


Node.js提供了一个简单的模块系统,可以让node.js的文件可以相互调用。模块是node.js应用程序的基本组成部分,文件与模块一一对应。也就是说一个文件就是一个模块,这些文件可以是javascript、json或者编译过的c/c++文件。

模块调用

有一个模块hello.js:

exports.sayhello = function(name){
    console.log('Hello, '+name +'.');
}

又有一个主模块main.js:

var hello = require('./hello');
hello.sayhello('James');

在以上代码中,hello.js 通过 exports 对象把 sayhello 作为模块的访问接口,在 main.js 中通过 require('./hello') 加载这个模块,然后就可以直接访问 hello.js 中 exports 对象的成员函数了。

运行效果如下:

lee@mypc ~/works/nodejs/study5 $ node main.js
Hello, James.

另一种写法,main2.js:

var sayhello = require('./hello').sayhello;
sayhello('James');

路径

跟其它编程语言一样,有相对路径和绝对路径

相对路径之当前目录:

var hello = require('./hello');

var hello = require('./hello.js');

相对路径之上级目录:

var hello = require('../study5/hello');

var hello = require('../study5/hello.js');

绝对路径:

var hello = require('/home/lee/works/nodejs/study5/hello');

var hello = require('/home/lee/works/nodejs/study5/hello.js');


原文链接:HelloWeb前端网 » node.js学习笔记(5) 模块 » 感谢您的浏览,希望能有所帮助。

欢迎您加入“Helloweb” 学习交流群:HelloWeb-学习交流群 196291215 共同交流并结识同行,在这里说出您的收获与感想或有什么不同的观点,我们期待您的留言,分享,让我们一起进步!

喜欢 ()or分享