【前端】Node.js中的模块化

本文深入解析Node.js的模块系统,包括模块的定义、引用及标识。阐述了每个js文件作为一个独立模块的概念,如何通过exports暴露变量和方法,以及如何使用require()函数引入外部模块。同时,区分了核心模块与文件模块的不同标识方式。

目录

模块的定义

模块的引用

模块的标识


 

模块的定义

在Node中,一个js文件就是一个模块

1.在Node中,每一个js文件中的js代码都是独立运行在一个函数中,并不是运行在全局作用域,所以所以一个模块的中的变量和函数在其他模块中无法访问。

2.要想访问另一个模块中的变量和函数,我们可以通过exports来向其他模块暴露变量和方法。

具体操作:只需要将需要暴露给外部的变量或方法设置为exports的属性即可,如:我在02.module.js文件中以下代码:

嫌麻烦的话也可以写成这样

我向外部暴露了x和y两个变量和一个fn函数,这样其他模块在引用这个模块时就访问到这个模块的变量和函数了。


模块的引用

那其他模块如何引用该模块呢?

在node中,通过require()函数来引入外部的模块
require()可以传递一个文件的路径作为参数,node将会自动根据该路径来引入外部模块
这里路径,如果使用相对路径,必须以...开头

使用require()引入模块以后,该函数会返回一个对这个对象代表的是引入的模块

如我在03.module.js文件中写了以下代码:

我在03.module.js文件中用require()函数引入了02.module.js文件,括号内写的是02.module.js文件的相对路径

该函数返回的是一个对象,为什么是对象,看下图:

控制台成功输出一个对象,并且把02.module.js文件中的变量x和变量y以及一个函数fn都给暴露出来了。这样,我们就完成了一个模块的引用。


模块的标识

我们使用require()引入外部模块时,使用的就是模块标识,我们可以通过模块标识来找到指定的模块
    - 模块分成两大类
        核心模块:
            - 由node引擎提供的模块
            - 核心模块的标识就是,模块的名字
        文件模块:
            - 由用户自己创建的模块
            - 文件模块的标识就是文件的路径(绝对路径,相对路径)
                相对路径使用...开头

上面已经讲了文件模块,那么我们下面只说核心模块:

比如我们想用Node里面的文件模块的话我们就直接这样:

fs就是文件模块的名字了。

          

                                                                                      希望改文章能给你一些帮助

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值