Process模块怎样获取终端的输入数据?

开发 前端
客户端与服务器的双向通信是通过代码实现的,因为我们无法直接在终端上进行信息输人,例如在客户端终端输入信息发送到服务器,这样的功能就需要依赖 Process 模块来完成。

客户端与服务器的双向通信是通过代码实现的,因为我们无法直接在终端上进行信息输人,例如在客户端终端输入信息发送到服务器,这样的功能就需要依赖 Process 模块来完成。对于每一个终端来说,都是一个标准输入与标准输出的一个接口而已,在 Process 模块中提供了获取终端输入数据的方法,下面进行详细介绍。

Process模块是一个无须使用 require0就可以从Nodejs 应用程序进行访问的全局对象,在 Node.js 中可以通过如下方式来获取进程中输入的数据,也就是终端的输入数据。

process.stdin.on('data',function (data) {
  console.log(data.toString().trim());
});

在上述代码中,通过监听process.stdin 对象的data事件,从data事件的回调函数中获取终端输人的数据,由于输入消息后需要按[Enter] 键,系统会将这个动作识别为空格所以使用trim0来去掉这个空格。

下面通过一个案例在终端进行输入演示。在chapter06 目录中创建demo6-6.js,并且在该文件中添加如下代码。

/**
 *测试获取终端输入
 */
// 通过下面的方式就可以获取用户的输入
process.stdin.on('data',function (data){
  console.log(data.toString().trim());
});

打开终端,执行demo6-6.is,结果如图所示。

demo6-6js执行结果

在图中第二行出现闪烁的光标,这时可以在终端输人内容,例如输入“123456”后按[Enter]键,如下所示。

图 获取终端输入

在上图中,第一个“123456”是使用键盘输入的,第二个“123456”是按[Enter]键后获取到的输入信息,被输出到了终端。

责任编辑:华轩 来源: 今日头条
相关推荐

2012-08-29 09:58:34

JavaScriptJavaScript模

2023-03-09 15:11:30

数据可视化工具matplotlib

2010-01-18 22:54:40

2023-03-09 15:55:17

JavaScriptURLCSS

2009-12-17 15:28:32

内核模块编译

2018-02-24 09:51:03

Linux密码安全

2009-01-06 09:10:33

WAPIWiFi终端芯片

2022-06-08 13:07:22

数据存储数据管理桌面

2011-06-03 10:31:14

SQL

2009-11-24 10:21:46

2011-03-25 12:57:13

备份Cacti数据

2021-07-14 14:24:14

Python密码程序员

2018-09-30 10:59:14

UbuntuLinux安装软件

2023-06-20 19:35:00

Node.js工具

2019-08-12 10:30:54

FedoraLinuxYakuake

2023-12-13 17:04:51

终端命令shell

2011-01-14 14:49:05

2022-03-25 08:34:57

物联网安全物联网IOT

2023-12-12 17:56:05

终端JavaScrip代码

2023-06-15 15:21:43

点赞
收藏

51CTO技术栈公众号