千家信息网

Node.js使用方式及模块化的方法

发表于:2025-01-20 作者:千家信息网编辑
千家信息网最后更新 2025年01月20日,本篇内容介绍了"Node.js使用方式及模块化的方法"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!什
千家信息网最后更新 2025年01月20日Node.js使用方式及模块化的方法

本篇内容介绍了"Node.js使用方式及模块化的方法"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

什么是Node.js ?

Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行时。类似于Java中的JRE,.Net中的CLR。在Node.js诞生之前,JavaScript做为Web前端脚本语言,一直占据者前端开发的王者地位,浏览器之所以能够解析JavaScript,是基于浏览器引擎来实现的。后来有人【Ryan Dahl】突发奇想,将google浏览器的V8引擎从浏览器中剥离出来,并加以完善,使得JavaScript编写的程序也可以脱离浏览器,做为服务器端来运行,于是Node.js应运而生。这一消息让众多JavaScript的爱好者,看到了希望的曙光,于是纷纷加入Node.js的开源生态建设当中。目前基于Node.js的各种框架,组件库等层出不穷,颇受大家喜爱,Node.js也呈现一片欣欣向荣的景象。

Node.js下载

Node.js使用事件驱动,非阻塞式I/O模型,即轻量又高效。Node.js的包管理器NPM,是目前全球最大的开源库生态系统。Node.js可通过Node.js中文官网【http://nodejs.cn/】进行下载【最新版本:v16.14.0】,如下所示:

Node.js不仅支持Windows,也支持Linux,MacOS,跨平台支持各种环境。在Windows下,直接下载64位的安装包即可,如下所示:

Node.js和JavaScript的区别

刚开始学习时,往往分不清Node.js和JavaScript的区别,通过学习并加以整理,两者的区别如下:

Node.js是一个基于Chrome V8引擎的可以运行JavaScript程序的环境,并且对JavaScript语言进行了增强【文件,网络,操作系统,数据库等】,使得JavaScript语言具有服务器端程序的开发能力。

JavaScript是一门编程语言,只要有JavaScript引擎就可以运行,各个浏览器都有各自的浏览器引擎。并且如果JavaScript运行与浏览器中,浏览器对JavaScript加入了BOM和DOM操作的接口方法。

Node.js安装与验证

Node.js安装比较简单,采用默认即可,当安装成功后,在命令行窗口通过node -v可以查看版本号,如下所示:

注意:因为安装时,默认已将Node.js加入环境变量,所以可以直接使用node.js的命令。

Node.js使用方式

Node.js使用方式有两种:

  • REPL模式,直接在命令行,执行JavaScript语句。

  • 文件模式,即业务逻辑写在JS文件中,通过node 文件名称进行执行。

1. REPL模式

REPL【Read-Evaluate-Print-Loop】模式,即输入-求值-输出-循环,即交互式命令行解析器模式。启动REPL模式,在命令行输入node即可进入node.js环境,然后执行JavaScript语句,如下所示:

注意:REPL模式,只适用于简单的语句,不能应用到复杂的业务逻辑。退出REPL模式,按Ctrl+C两次即可。

2. 文件模式

首先创建js文件,如下所示:

var username="Alan.hsiang";console.log("我是 "+username);

首先将目录切换到js文件所在的目录,然后在命令行,通过【node 文件名称】的方式即可执行,如下所示:

Node.js模块化

Node.js采用CommonJS模块化规范,所以基于Node.js开发的程序,也需要遵循CommonJS模块化规范。

1. 什么是模块?

在Node.js中,所有的功能都是以模块的形式存在的。每一个具有特定功能的js文件,就是一个模块;所有用户编写的代码,都会自动的封装在模块中。模块之间可能会存在一定的依赖关系,使用模块可以很好的把这些依赖关系整合起来。

2. 模块分类

在Node.js中,模块分为两类:

  • 系统模块,系统提供的,可以直接使用的模块。

  • 自定义模块,用户编写的,具有特定功能的模块。

3. 创建自定义模块

创建一个js文件,代码如下:

 var username="小六公子"; function sayHi(){     console.log("hi,小六子"); } exports.username=username; exports.sayHi=sayHi;

注意:在javascript中,通过exports暴露对象给调用者。通过require来引用其他模块。

4. 调用自定义模块

调用自定义模块,通过require("./文件名.js")实现,如下所示:

 var obj =require("./demo01-1.js"); console.log(obj); console.log(obj.username); console.log(obj.sayHi());

注意:require函数返回的是一个对象,通过对象调用自定义模块公开的属性和函数。

5. 模块测试

在Node.js中执行,输出结果如下所示

6. 主模块

在Node.js中,模块的入口称之为主模块,负责统筹调度程序组成的其他模块完成指定的功能。一个项目只能有一个主模块,默认情况下,通过package.json中的main属性进行声明,一般为main.js或者 index.js。类似于.Net中的Progrom.cs的Main方法或者网站的首页。

7. 模块组成

在Node.js中,所有用户编写的代码都包含在模块中,模块就是文件(函数)。可以通过函数的内置参数arguments来查看。如下所示:

 console.log(arguments);

argments是一个内置对象,包含五个子对象。具体输出结果如下:

可以通过arguments.calle查看函数体本身。如下所示:

console.log(arguments.callee.toString());

Node.js在封装模块时,传递了五个参数,分别如下:

  • exports:暴露对象,通过将模块中的数据暴露给引入的地方。

  • require:引入模块函数,用于在一个模块中引入另外一个模块,并且将子模块暴露的数据赋值给变量。

  • module:模块对象,包含当前模块的所有信息。

  • __filename:当前模块的文件名

  • __dirname:当前模块所在的目录路径

输出结果如下所示:

注意:通过以上可以看出,之所以在程序中可以使用require,exports,就是因为Node.js在封装对象时,默认传递了此参数。

"Node.js使用方式及模块化的方法"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!

模块 文件 模式 浏览器 浏览 对象 函数 命令 引擎 程序 方式 输出 运行 方法 功能 环境 系统 语言 代码 参数 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 数据库固定资产管理系统作业 滦南网络营销软件开发答疑解惑 杭州管理软件开发公司 为什么网络安全事件 投资实用网络技术有限公司 关于网络安全发言稿300字初中 玉林网络安全支队梁德初 湖北红色文化馆软件开发公司 手机浏览器服务器错误404 海关大数据库系统 word数据库管理系统 揭西县天气预报软件开发 网络安全网站开发全栈工程师 凤城逸萱网络技术 qq idc云数据库怎么做 网络安全态势感知系系包括 服务器液体 网络技术人才推荐信 安徽龙澄软件开发有限公司 网络安全电子版手抄报可编辑 联通isp服务器链接超时 街道网络安全周宣传活动 滦南网络营销软件开发答疑解惑 数据库限制命令查询 数据库查询怎样两列相加 网络安全许可证一年有效期 杭州软件开发公司外包利润 在网络技术高速发展 滨湖区机电软件开发特征 2020年网络安全教育视频
0