【Node.js】 第四章 模块化
创始人
2024-04-08 08:52:50
0

目录

1. 模块化的概念

1.1 模块化的概念

1.2 模块化规范

2. Node.js中的模块化

2.1 模块分类

2.2 模块加载

2.3 模块作用域 

2.4 向外共享模块成员

2.5  exports对象

2.6 Node.js中的模块化规范


1. 模块化的概念

1.1 模块化的概念

按照模块指定规则,把一个大文件拆分为一个个小模块。这可提供代码的复用性,可维护性,按需加载。

1.2 模块化规范

如何引入的规范,如何暴露的规范

2. Node.js中的模块化

2.1 模块分类

1. Node.js的内置模块:如fs、path、http模块等

2. 自定义模块:用户写的每个js文件

3. 第三方模块:第三方开发的模块

2.2 模块加载

使用require来加载模块:

// 加载内置模块
const fs = require('fs');// 加载自定义模块、需要指定路径
const custom = require('./custom.js');// 也可省略.js后缀,require方法会自动补全// 加载第三方模块
const memont = require('memont');

2.3 模块作用域 

和函数作用域类似,在自定义模块中定义的变量、方法等成员,只能在当前模块内被访问,这种模块级别的访问限制,叫做模块作用域。优点在于可以防止污染全局变量。

2.4 向外共享模块成员

1. module对象

每个.js文件都有一个module对象,存储了跟当前文件有关的信息

2. module.exports

 在自定义模块中,可以使用module.exports导出当前的文件对象,默认为空对象。

导出指定属性和方法:module.exports.xxx = xxx

 注意:require永远以module.exports 指向的最新的对象为准

示例:

2.5  exports对象

由于module.exports单词写起来比较复杂,为了简化向外共享成员的代码,Node提供了exports对象。默认情况下,exports和module.exports指向同一个对象,最终共享的结果,还是以module.exports指向的对象为准。

注意:require()模块时,得到的永远是module.exports指向的对象: 

2.6 Node.js中的模块化规范

 

相关内容

热门资讯

不能访问光猫的的管理页面 光猫是现代家庭宽带网络的重要组成部分,它可以提供高速稳定的网络连接。但是,有时候我们会遇到不能访问光...
【NI Multisim 14...   目录 序言 一、工具栏 🍊1.“标准”工具栏 🍊 2.视图工具...
Android|无法访问或保存... 这个问题可能是由于权限设置不正确导致的。您需要在应用程序清单文件中添加以下代码来请求适当的权限:此外...
银河麒麟V10SP1高级服务器... 银河麒麟高级服务器操作系统简介: 银河麒麟高级服务器操作系统V10是针对企业级关键业务...
北信源内网安全管理卸载 北信源内网安全管理是一款网络安全管理软件,主要用于保护内网安全。在日常使用过程中,卸载该软件是一种常...
安卓文字转语音tts没有声音 安卓文字转语音TTS没有声音的问题在应用中比较常见,通常是由于一些设置或者代码逻辑问题导致的。本文将...
APK正在安装,但应用程序列表... 这个问题可能是由于以下原因导致的:应用程序安装的APK文件可能存在问题。设备上已经存在同名的应用程序...
​ToDesk 远程工具安装及... 目录 前言 ToDesk 优势 ToDesk 下载安装 ToDesk 功能展示 文件传输 设备链接 ...
AWSECS:访问外部网络时出... 如果您在AWS ECS中部署了应用程序,并且该应用程序需要访问外部网络,但是无法正常访问,可能是因为...
报告实验.pdfbase.tt... 这个错误通常是由于找不到字体文件或者文件路径不正确导致的。以下是一些解决方法:确认字体文件是否存在:...