node.js 的模块化开发规范

Posted 冰雪奇缘lb

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了node.js 的模块化开发规范相关的知识,希望对你有一定的参考价值。

node.js 的模块化开发

  • javascript 开发弊端:JavaScript 在使用时存在两大问题,文件依赖和命名冲突。
    在这里插入图片描述

  • Node.js 规定一个 JavaScript 文件就是一个模块,模块内部定义的变量和函数默认情况下在外部无法得到。

  • 模块内部可以使用 exports 对象进行成员导出,使用 require方法 导入其他模块。
    在这里插入图片描述

模块成员导出

// a.js
// 在模块内部定义变量
let version = 1.0 ; 
// 在模块内部定义方法
const sayHi = name => `您好,${ name }`; 
//向模块外部导出数据
exports.version = version;
exports.sayHi = sayHi;

模块成员的导入

// b.js
// 在b.js模块中导入模块a,后缀可以省略
let a = require( './b.js');
// 输出b模块中的version变量
console.log(a.version);
// 调用b模块中的sayHi方法并输出其返回值
console.log(a.sayHi('黑马讲师'));

模块成员导出的另一种方式

mocule.exports.version = version;
module.exports.sayHi = sayHi;

exportsmodule.exports 的别名(地址引用关系),导出对象最终以 module.exports 为准。

模块导出两种方式的联系与区别
在这里插入图片描述
在这里插入图片描述
实例:

const greeting = name -> `hello ${name}`;
const x = 100;
exports.x = x;
moduLe.exports.greeting = greeting;
//当exports对象和moudle.exports对象指向的不是同一个对象时以module.exports为准
moduLe.exports = {
	name: 'zhangsan'
}
exports = {
	age: 20
}

以上是关于node.js 的模块化开发规范的主要内容,如果未能解决你的问题,请参考以下文章

node.js 的模块化开发规范

node——Commonjs

模块化及node.js模块化详解

Node.js开发实战

node.js的模块化

02 node.js模块化开发