node-模块
node模块
在 Node.js 模块系统中,每个文件都被视为一个独立的模块。
node中每个js文件都是一个模块,都可以导出(
exports
),而多个js文件之间可以导入(require
),共同实现一个功能
模块的导出
在一个js文件中实现了功能,要在另一个js文件中使用,就要把对应的功能导出。而模块的导出要用到
Module..exports
,在exports
对象上指定额外的属性
例子:在一个js文件中完成了一个方法或类,想要在别的js中使用,比如定义了一个sum方法和一个Animal的类
1 | function sum(num1, num2){ |
- 模块导出的两种方式
1 | // 模块的导出方式1 |
其中exports
是modele.exports
的引用。在文件中才有exports,交互模式下没有
1 | console.log(exports === module.exports); // true |
模块的导入
模块导出后要在别的js文件中使用还要将模块导入到js文件中,要用到
require
- 上面导出模块的js文件(sum.js)和需要导入的js文件在同一目录下
1 | /**模块的导入*/ |
模块中的this
1 | // 在js文件中导出 |
- 说明js文件中的this指向模块导出的对象exports,在交互模式下this===global