欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  web前端

NodeJs的CommonJs和NodeJs中自定义模块的介绍

程序员文章站 2022-03-15 19:03:27
...
本篇文章给大家带来的内容是关于NodeJs的CommonJs和NodeJs中自定义模块的介绍,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

CommonJs和NodeJs中自定义模块

1、什么是CommonJs

教程里巴拉巴拉说了一堆,我的理解就是 CommonJs 就是模块化的标准,NodeJs 就是CommonJs(模块化)的实现。用 CommonJS API 编写出的应用,不仅可以利用JavaScript 开发客户端应用,而且还可以编写以下应用:
a.服务器端JavaScript应用程序(nodejs)
b.命令行工具
c.桌面图形界面应用程序

2、NodeJs中的模块化

Node应用是模块组成的,采用CommonJs模块规范。

在Node中,模块分为两类:

一类是 Node 提供的模块,称为核心模块;另一类是用户编写的模块,称为 文件模块。
核心模块部分在 Node 源代码的编译过程中,编译进了二进制执行文件。在 Node 进程启动时,部分核心模块就被直接加载进内存中,所以这部分核心模块引入时,文件定位和编译执行这两个步骤可以省略掉,并且在路径分析中优先判断,所以它的加载速度是最快的。如:HTTP模块、URL模块、Fs模块都是nodejs 内置的核心模块。可以直接引入使用。
文件模块则是在运行时动态加载,需要完整的路径分析、文件定位、编译执行过程、速度相比核心模块稍微慢一些,但是用的非常多。 这些模块需要我们自己定义。 接下来我下们看一下nodejs中的自定义模块。

CommonJS (Nodejs )中自定义模块的规定

我们可以把公共的功能 抽离成为一个单独的js文件 作为一个模块,默认情况下面这个模块里面的方法或者属性,外面是没法访问的。如果要让外部可以访问模块里面的方法或者属性,就必须在模块里面通过 exports 或module.exports 暴露属性或者方法。
在需要使用这些模块的文件中,通过 require 的方式引入这个模块。这个时候就可以使用模块里面暴露的属性和方法。
这里我做了一张图方便理解:

NodeJs的CommonJs和NodeJs中自定义模块的介绍

  • 定义使用模块

新建二个js

NodeJs的CommonJs和NodeJs中自定义模块的介绍

NodeJs的CommonJs和NodeJs中自定义模块的介绍

3.npm init生成package.json

npm init -yes

以上就是NodeJs的CommonJs和NodeJs中自定义模块的介绍的详细内容,更多请关注其它相关文章!

相关标签: node.js