我爱编程

Node.js模块化

2018-04-06  本文已影响17人  拓跋123

1、概念
为了让Node.js的文件可以相互调用,Node.js提供了一个简单的模块系统,
模块是Node.js应用程序的基本组成部分
文件和模块是一一对应的,一个Node.js文件就是一个模块
这个文件可以是JavaSript,JSON或者编译过的C/C++扩展
2、主要模块
Node.js中存在4类模块——原生模块和3种文件模块(第三方提供);
3、模块加载流程
使用require载入模块
在文件模块缓存区中检查模块是否被载入过了,如果已经加载过了,就返回exports,
如果没有找到就检查是否为原生模块,如果是原生模块,就到原生模块缓存区中找,如果找到了返回exports,如果没有找到就加载原生模块并放到缓存中;
同样的,如果在原生模块缓存区中没有找到就到文件中查找,之后根据文件扩展名载入文件模块,并缓存文件模块缓存区中。
4、模块的加载方式:
1)从文件模块缓存中加载
2)从原生模块加载
3)从文件加载
5、加载模块的方式(require)
原生模块:http、fs、path 例:require('fs')
相对路径文件模块:./module
绝对路径/path/module
4、举个例子(例子需要两个js文件,Main.js为主文件,Hello.js为模块文件)
Hello.js

function Hello() {
    var name;
    this.setName = function(argName){
        name = argName;
    }
    this.sayHello = function () {
        console.log('Hello '+name);
    }
}
module.exports = Hello;

Main.js

//引入Hello模块
var Hello = require("./Hello");
hello = new Hello();
hello.setName("Lidian");
hello.sayHello();
上一篇下一篇

猜你喜欢

热点阅读