IT培训-高端面授IT培训机构
云和教育:云和数据集团高端IT职业教育品牌 全国咨询热线:0371-67988003
课程 请选择课程
    校区 请选择校区
      • 华为
        授权培训中心
      • 腾讯云
        一级认证培训中心
      • 百度营销大学
        豫陕深授权运营中心
      • Oracle甲骨文
        OAEP中心
      • Microsoft Azure
        微软云合作伙伴
      • Unity公司
        战略合作伙伴
      • 普华基础软件
        战略合作伙伴
      • 新开普(股票代码300248)
        旗下丹诚开普投资
      • 中国互联网百强企业锐之旗
        旗下锐旗资本投资

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

      • 发布时间:
        2023-01-12
      • 版权所有:
        云和教育
      • 分享:

      客户端与服务器的双向通信是通过代码实现的,因为我们无法直接在终端上进行信息输人,例如在客户端终端输入信息发送到服务器,这样的功能就需要依赖 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,结果如图所示。
      1671615926485_demo6.jpg

      demo6-6js执行结果

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

      1671615919910_命令提示符、.jpg
      图 获取终端输入

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