时间:2021-05-26
本文实例讲述了Node.js API详解之 tty功能与用法。分享给大家供大家参考,具体如下:
tty 可以理解为终端的意思。tty 模块提供终端相关的接口,用来获取终端的行数列数等。
通过 const tty = require(‘tty'); 的方式引用 tty 模块
说明:
此属性位于 process 模块,用来判断 Node.js 是否运行在一个 TTY 环境中
demo:
console.log(process.stdout.isTTY)//truetty.ReadStream 类
说明:
tty.ReadStream 类是 net.Socket 的一个子类,表示 TTY 的可读部分。
正常情况下,process.stdin 是 Node.js 进程中唯一的 tty.ReadStream 实例,无需创建更多的实例
也就是说不需要我们手动 new 一个实例,直接使用 process.stdin 即可。
说明:
是否为原始模式,默认值为 false 。如果TTY被配置成原始模式,该属性值为 true
demo:
console.log(process.stdin.isRaw)//false说明:
该方法用来将 TTY 配置为原始模式。原始模式下,输入按字符逐个生效,终端对字符的所有特殊处理会被禁用,包括应答输入的字符。 该模式中 CTRL+C 不再产生 SIGINT。
mode:传递 true 或者 false 来关闭和开启原始模式,对应 readStream.isRaw 的值也会发生改变。
demo:
process.stdin.setRawMode(true); // 开启原始模式console.log(process.stdin.isRaw);//true process.stdin.setRawMode(false); // 关闭原始模式console.log(process.stdin.isRaw);//falsetty.WriteStream 类
说明:
tty.WriteStream 类是 net.Socket 的一个子类,表示 TTY 的可写部分。
正常情况下,process.stdout 和 process.stderr 是 Node.js 进程中唯一的 tty.WriteStream 实例,无需创建更多的实例。
说明:
此属性用来表示当前TTY具有的列数,当resize时间被触发时,该属性会被更新。
demo:
console.log(process.stdout.columns);//88说明:
次属性用来表示当前TTY具有的行数,当resize时间被触发时,该属性会被更新。
demo:
console.log(process.stdout.rows);//40说明:
当TTY窗口发生变化时,会触发resize事件。
demo:
process.stdout.on('resize', () => { console.log('窗口大小发生变化!'); console.log(`${process.stdout.columns}x${process.stdout.rows}`);});// > 窗口大小发生变化!// 86x40// > 窗口大小发生变化!// 85x40// > 窗口大小发生变化!// 84x40说明:
如果给定的 fd 有关联 TTY,则返回 true,否则返回 false。
fd 数值类型的文件描述符。
demo:
console.log(tty.isatty(2));//trueconsole.log(tty.isatty(200));//false希望本文所述对大家node.js程序设计有所帮助。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本文实例讲述了Node.jsassert断言原理与用法。分享给大家供大家参考,具体如下:node.js官方API中文版http://nodeapi.ucdok.
本文实例讲述了Node.jsconsole控制台简单用法。分享给大家供大家参考,具体如下:在Node.js官方文档https://nodejs.org/api/
Linux使用Node.js建立访问静态网页的服务实例详解一、安装node.js运行所需要的环境,:二、创建node目录(/node/www),并在目录下创建n
本文实例讲述了Node.jsAPI详解之assert模块用法。分享给大家供大家参考,具体如下:Node.jsAPI详解之assertassert模块提供了断言测
本文实例讲述了Node.jsAPI详解之zlib模块用法。分享给大家供大家参考,具体如下:Node.jsAPI详解之zlibzlib模块提供通过Gzip和Def