手机网站开发指南,欧派网站谁做的,wordpress短代码显示,海淘返利网站怎么做一、node.js的模块化
(1)什么是模块化#xff1f;
将一个复杂的程序文件依据一定的规则拆分成为多个文件的过程就是模块化
在node.js中#xff0c;模块化是指把一个大文件拆分成独立并且相互依赖的多个小模块#xff0c;将每个js文件被认为单独的一个模块#xff1b;模块… 一、node.js的模块化
(1)什么是模块化
将一个复杂的程序文件依据一定的规则拆分成为多个文件的过程就是模块化
在node.js中模块化是指把一个大文件拆分成独立并且相互依赖的多个小模块将每个js文件被认为单独的一个模块模块之间是互相不可见的如果一个模块需要使用另一个模块则需要使用指定的语法来引入模块并且只能引入模块所暴露的内容
语法 const 变量名 require(模块的路径)
(2)什么是模块化项目
编码是按照模块一个一个编码的整个项目就是一个模块化的项目
(3)模块化的好处
防止命名冲突、高复用性、高维护性 二、node.js的模块化代码初体验
1两种暴露数据的方式
方式一module.exportsvalue
方式二module.namevalue
代码示例我建两个文件夹
文件夹一的内容
// 调用初体验2.js里面的函数
// 一.导入模块
const firstrequire(./36-1初体验2);// 二.调用函数
// 方式一module.exportsvalue
// (1)调用函数first
first();
//输出结果为我是初体验2里面的内容1
// (2)调用函数second、third
first.second();
first.third();
//输出结果为我是初体验2里面的内容2 我是初体验2里面的内容3// 方式二module.namevalue
// (1)调用函数second、third
console.log(first);
//输出结果为{ sc: [Function: second], th: [Function: third] }
文件夹二的内容
// 一、声明函数 下面我声明三个函数来依次举例
function first(){console.log(我是初体验2里面的内容1);
}
function second(){console.log(我是初体验2里面的内容2);
}
function third(){console.log(我是初体验2里面的内容3);
}
// 二、暴露数据
// 方式一module.exportsvalue
// (1)暴露数据first
module.exportsfirst; //我是初体验2里面的内容1
// (2)暴露数据second和third
module.exports{second,third
}
// 方式二module.namevalue
// (1)暴露数据second和third
exports.scsecond;
exports.ththird;2注意点
1》module.exports可以暴露任何数据
文件夹two
module.exportslove;
module.exports爱;
module.exports520;
文件夹one
const arequire(./two);
console.log(a);分别将文件夹two的数据输出运行文件夹one的结果显示 2》不能使用exportsvalue的形式暴露数据
文件夹two
exportslove
文件夹one
const arequire(./two);
console.log(a);运行文件夹one的结果显示 3》模块内部module与exports有隐式关系 exportsmodule.exports{ }
文件夹two
console.log(exports);
console.log(exportsmodule.exports);
运行文件夹two的结果显示 三、 CommonJS规范
1什么是CommonJS规范
CommonJS规范最初是为Node.js设计的但现在也在其他环境中得到广泛应用。它用于模块化编程的一种标准。它提供了一种方式来定义模块以及如何在不同的node.js环境中共享和重用这些模块。
CommonJS规范提供了一种简单而一致的方式来组织和管理node.js代码中的模块。这使得在不同环境中重用和共享代码变得更加容易
2关于CommonJS规范的一些关键操作
1.定义模块
在CommonJS中每个文件都被视为一个模块。你可以通过module.exports或exports对象来导出模块的公共API。
module.exports、exports、require..都是模块化规范中的内容。
node.js实现了CommonJS模块化规范它们二者关系就等同于javascript与ECMAScript
2.引入模块
使用require函数来引入其他模块
3.模块标识
在CommonJS中模块的标识是文件的路径。当你使用require函数时它会根据传入的路径来查找并加载相应的模块
4. 模块加载
当模块被首次require时它会被加载并执行。CommonJS模块系统提供了同步加载的机制这意味着在模块被加载之前代码的执行会暂停
5. 模块缓存
一旦模块被加载它就会被缓存起来。这意味着多次require同一个模块会返回第一次加载时的结果而不是重新加载和执行模块
6.错误处理
如果require函数无法找到指定的模块它会抛出一个错误。在Node.js中这通常会导致进程退出
7. 模块系统扩展
虽然CommonJS规范定义了模块的基本行为但具体的实现可能会因环境而异。例如Node.js提供了许多内置模块如fs、http等这些模块提供了与底层系统交互的功能