更新时间:2022-12-21 来源:黑马程序员 浏览量:
客户端与服务器的双向通信是通过代码实现的,因为我们无法直接在终端上进行信息输人,例如在客户端终端输入信息发送到服务器,这样的功能就需要依赖 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]键后获取到的输入信息,被输出到了终端。
【AI设计】北京143期毕业仅36天,全员拿下高薪offer!黑马AI设计连续6期100%高薪就业
2025-09-19【跨境电商运营】深圳跨境电商运营毕业22个工作日,就业率91%+,最高薪资达13500元
2025-09-19【AI运维】郑州运维1期就业班,毕业14个工作日,班级93%同学已拿到Offer, 一线均薪资 1W+
2025-09-19【AI鸿蒙开发】上海校区AI鸿蒙开发4期5期,距离毕业21天,就业率91%,平均薪资14046元
2025-09-19【AI大模型开发-Python】毕业33个工作日,就业率已达到94.55%,班均薪资20763元
2025-09-19【AI智能应用开发-Java】毕业5个工作日就业率98.18%,最高薪资 17.5k*13薪,全班平均薪资9244元
2025-09-19