位置: IT常识 - 正文

如何在控制台打印彩色文字-你不知道的ANSI Color(如何在控制台打印debug里的数据)

编辑:rootadmin
我们在使用脚手架的时候,经常会看到终端输出五颜六色的字符,看起来很酷。如果我们想实现这种效果,通常都会用colors或者chalk来快速实现。 那么问题来了,他们是如何实现的呢? const predefineColor =

推荐整理分享如何在控制台打印彩色文字-你不知道的ANSI Color(如何在控制台打印debug里的数据),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:如何在控制台打开游戏,如何控制台打开网络管理器,如何在控制台打印debug里的数据,如何在控制台打印debug里的数据,如何在控制台打开网址,如何在控制台打开网址,如何在控制台打印,如何在控制台打印,内容如对您有帮助,希望把文章链接给更多的朋友!

我们在使用脚手架的时候,经常会看到终端输出五颜六色的字符,看起来很酷。如果我们想实现这种效果,通常都会用colors或者chalk来快速实现。

那么问题来了,他们是如何实现的呢?

const predefineColor = [196, 214, 46, 53, 205, 196]const out = 'Double Raindows All Day Long'/** * ESCAPE (U+001B) unicode表示法即 `u001b` *//** * 8位颜色表示法 n的色值是预定义的,可通过 https://zh.wikipedia.org/wiki/ANSI转义序列 查表得到 * ESC[38;5;<n>m 选择前景色,其中`38`表示前景色,`n`表示预定义的256种颜色的色值 * ESC[48;5;<n>m 选择背景色,其中`48`表示背景色,`n`表示预定义的256种颜色的色值 */console.log('\u001b[38;5;214mFirst some yellow text');/** * 3/4位颜色表示法 n的色值是预定义的,可通过 https://zh.wikipedia.org/wiki/ANSI转义序列 查表得到 * ESC[<n>m 选择前景色 其中n取值范围30<=n<=37 * ESC[<n>m 选择前景色 其中n取值范围40<=n<=47 */console.log('\u001b[92m\u001b[4mUnderline that text\u001b[0m');/** * 24位颜色表示法, 支持rgb色值,n的色值是预定义的,可通过 https://zh.wikipedia.org/wiki/ANSI转义序列 查表得到 * ESC[38;2;<R>;<G>;<B>m 选择前景色,其中`38`表示前景色,`RGB`表示三原色,n取值范围0<=n<=255 * ESC[48;2;<R>;<G>;<B>m 选择背景色,其中`48`表示背景色,`RGB`表示三原色,n取值范围0<=n<=255 */console.log('\u001b[38;2;250;0;0m\u001b[1mMake it bold and red\u001b[0m');console.log('\u001b[31m\u001b[3mItatic that text\u001b[0m');console.log('\u001b[37m\u001b[42mBackground color attack!\u001b[0m');function print(out) { const res = out.split(' ') let str = ''; res.forEach(i => { [].forEach.call(i, (j, index) => { str += `\u001b[38;5;${predefineColor[index % predefineColor.length]}m${j}` }) str += " " }) console.log(str);}print(out)

如何在控制台打印彩色文字-你不知道的ANSI Color(如何在控制台打印debug里的数据)

参考资料:

ANSI转义序列

Unicode字符列表

控制台ANSI Color的表示和用法

关于\u001b转义字符

本文链接地址:https://www.jiuchutong.com/zhishi/311956.html 转载请保留说明!

上一篇:java常用代码整理(java 代码简洁)

下一篇:Spring Boot + Redis 实现分布式锁,还有谁不会??(springbootredis密码加密)

  • 息税前利润变动率的计算公式
  • 船舶吨税范围
  • 工资绩效被扣除怎么办
  • 长期股权投资为什么要冲减资本公积
  • 所得税忘了计提如何做会计分录还有结转
  • 固定资产加速折旧的方法有哪些
  • 转让不动产增值税纳税义务发生时间
  • 计提坏账准备确认的信用减值损失累计金额
  • 生产过程半成品报废
  • 摊销费用怎么计提
  • 工地用材料如何分类
  • 银行的期初数据怎么进行账务处理?
  • 建筑行业预收账款
  • 虚开发票可以做进项税额转出分录吗?
  • 行邮税税率表2023
  • 行政事业单位会计基础工作规范
  • 小规模开普票要交税吗分录怎么做
  • 开劳务分包发票需要什么条件?
  • 房屋贷款基准利率表 历年查询
  • 体育用品怎么才能买到
  • 2021发票勾选认证
  • linux 列表
  • 增值税发票是不是可以抵税
  • svchost进程很多怎么办
  • 刚成立的公司老总叫什么
  • PHP:ftp_delete()的用法_FTP函数
  • 禁止扣除项目有什么
  • 盈余公积弥补以前年度亏损所有者权益会增加
  • 免购车税政策
  • Sandilands省级森林中被白霜覆盖的番红花,加拿大曼尼托巴 (© Jaynes Gallery/Danita Delimont)
  • 福利费做账分录
  • 印度泰姬陵建筑
  • 所有非批扣和所有批扣是什么意思
  • 已计提的存货跌价准备计入成本吗
  • yolo系列算法全家桶
  • 前端资源浏览器下载
  • k8s kubelet
  • 遮天传官网
  • 营业外支出的会计科目
  • 自产自销农产品免税备案取消
  • 工会经费残保金怎么申报
  • 劳务派遣业务如何开展
  • 货物运输行业前景如何
  • 资产减值损失是费用吗
  • 计税工资什么意思2019
  • mysql怎么修改
  • 企业所得税汇算清缴会计分录
  • 收到银行贷款发放成功的短信
  • 2019员工旅游费最新规定
  • 发票还没认证可以报销吗
  • 上月未记账,本月同样可以记账
  • 境外企业向境内汇款
  • 发票冲红的会计怎么处理
  • 用友软件中冲销凭证在哪
  • 会议费是指参加会议还是举办会议
  • 成本与费用的区别联系
  • 小规模企业所得税优惠政策最新2023
  • 系统诊断工具命令
  • linux的telnet用法
  • linux 清理
  • creative cloud怎么用
  • os x10.10.5 beta下载 mac os x10.10.5beta官方下载地址
  • windos8怎么样
  • npfmntor.exe - npfmntor是什么进程 有什么用
  • Cocos2d-JS中JavaScript继承
  • js插件大全
  • jquery跳出循环
  • jquery easyui开发指南
  • 使用nodejs中httpProxy代理时候出现404异常的解决方法
  • Eclipse和AndroidStudio常用快捷键对比
  • 生成器作用
  • core文件的作用
  • javascript要怎么学
  • unity星球模型
  • python 脚本
  • 重庆税务局官网发票查询
  • 原单位已交社保,新单位怎么办
  • 房产的原值以什么为准
  • 江苏省社科院院士名单
  • 生产企业出口退税退的是哪部分的税
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设