nodejs模块怎么用
Node.js 是一套基于事件驱动、异步 I/O 的开源跨平台 JavaScript 运行时环境。在 Node.js 中,使用模块来组织代码,每个模块都是一个独立的文件,可以通过导入/导出进行模块间调用和逻辑复用。本文将介绍 Node.js 模块的基本用法。
1.导入模块
在 Node.js 中,使用 require() 函数导入模块。require() 函数的参数为需要导入的模块名,模块名可以是相对路径或绝对路径,也可以是系统模块。
const module1 = require('./module1')
const module2 = require('./module2')
const fs = require('fs')
2.导出模块
在 Node.js 中,使用 module.exports 对象或 exports 对象导出模块。module.exports 和 exports 的默认值都是一个空对象 {},但是 module.exports 可以被重新赋值,而 exports 只是 module.exports 的一个引用,不能被重新赋值。
function add(a, b) {
return a + b
}
module.exports = {
add: add
}
exports.sub = function(a, b) {
return a - b
}
3.模块缓存
加载模块时,Node.js 会缓存已加载的模块以提高运行效率。当第二次加载相同的模块时,Node.js 会直接从缓存中读取,而不是重新加载。
4.模块路径解析顺序
在 require() 函数中指定的模块名若不是系统模块,则会按照以下顺序解析模块路径:
1.如果指定名字的模块是一个核心模块,则跳过后续的路径解析,直接返回该模块;
2.如果指定名字的模块以 './' 或 '../' 开头,则按照路径解析规则来定位模块文件。路径解析规则是:如果包含该模块的目录是当前目录,则查找该目录下的指定文件。如果包含该模块的目录是已添加到 $NODE_PATH 环境变量的目录,则在该目录下查找指定文件。如果包含该模块的目录不在上述两种目录中,则在当前目录和已添加到 $NODE_PATH 环境变量的目录中依次查找指定文件;
3.如果指定名字的模块不是一个核心模块,也不是以 './' 或 '../' 开头的文件名,则按照以下顺序依次查找模块文件:
1.在包含该模块的目录下查找 node_modules 目录;
2.在当前目录下查找 node_modules 目录;
3.在已添加到 $NODE_PATH 环境变量的目录中查找 node_modules 目录;
4.如果仍然找不到指定的模块文件,则抛出错误。
5.模块的循环引用
在 Node.js 中,允许模块之间进行循环引用,但是循环引用可能会导致模块未定义的问题。为了避免模块的循环引用,需要注意使用导出的方式和导入的时机。
6.总结
本文介绍了 Node.js 模块的基本用法,包括导入模块、导出模块、模块缓存、模块路径解析顺序和模块的循环引用等。了解这些内容将有助于我们更好地理解和使用 Node.js 模块化编程的思想。
以上就是nodejs模块怎么用的详细内容,更多请关注编程网其它相关文章!
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341