位置: 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密码加密)

  • 鸿蒙3.0什么时候出(鸿蒙3.0什么时候出正式版)

    鸿蒙3.0什么时候出(鸿蒙3.0什么时候出正式版)

  • 微信读书怎么发布到微信状态(微信读书怎么发布自己的读书配音)

    微信读书怎么发布到微信状态(微信读书怎么发布自己的读书配音)

  • 让孩子自立的励志故事(让孩子自立的55种方法)

    让孩子自立的励志故事(让孩子自立的55种方法)

  • 在b站搬运其他人的原创视频,怎么做才对(在B站搬运其他人的原创视频,怎样)

    在b站搬运其他人的原创视频,怎么做才对(在B站搬运其他人的原创视频,怎样)

  • 滴滴凌晨3点有车吗(滴滴凌晨三点有车吗)

    滴滴凌晨3点有车吗(滴滴凌晨三点有车吗)

  • 小度本地端口分配失败是什么意思(小度的另外的一个接口有什么用)

    小度本地端口分配失败是什么意思(小度的另外的一个接口有什么用)

  • 希沃视频展台的使用方法(希沃视频展台的摄像头有什么用)

    希沃视频展台的使用方法(希沃视频展台的摄像头有什么用)

  • 一个身份证可以注册几个头条号(一个身份证可以实名几个zfb账号)

    一个身份证可以注册几个头条号(一个身份证可以实名几个zfb账号)

  • 华为暗夜模式怎么开(华为暗夜模式怎么打开)

    华为暗夜模式怎么开(华为暗夜模式怎么打开)

  • qq电话会显示忙线吗(打qq电话显示对方忙)

    qq电话会显示忙线吗(打qq电话显示对方忙)

  • 苹果8电池健康度85%要换吗(苹果8电池健康78要换吗)

    苹果8电池健康度85%要换吗(苹果8电池健康78要换吗)

  • 苹果6通讯录怎么导入手机卡里(苹果6通讯录怎么一次性删除)

    苹果6通讯录怎么导入手机卡里(苹果6通讯录怎么一次性删除)

  • 苹果id注销后还能重新注册吗(苹果id注销后还能弄新的id吗)

    苹果id注销后还能重新注册吗(苹果id注销后还能弄新的id吗)

  • word画横线怎么删除(word画横线怎么改颜色)

    word画横线怎么删除(word画横线怎么改颜色)

  • 华为微信声音小怎么调大声(oppo手机微信声音小怎么调大声)

    华为微信声音小怎么调大声(oppo手机微信声音小怎么调大声)

  • 戴尔怎么设置u盘启动(戴尔怎么设置U盘为第一启动项)

    戴尔怎么设置u盘启动(戴尔怎么设置U盘为第一启动项)

  • 天猫会员店红包怎么使用(手机天猫会员店红包是什么意思)

    天猫会员店红包怎么使用(手机天猫会员店红包是什么意思)

  • 小米miui11什么时候出(miui11什么时候发布的)

    小米miui11什么时候出(miui11什么时候发布的)

  • 华为mate30pro何时上市(mate30pro2021)

    华为mate30pro何时上市(mate30pro2021)

  • qq号注销以后显示什么(qq注销以后显示冻结怎么回事)

    qq号注销以后显示什么(qq注销以后显示冻结怎么回事)

  • 闲鱼验机报告要出多久(闲鱼验机报告要多久)

    闲鱼验机报告要出多久(闲鱼验机报告要多久)

  • 戴尔的键盘锁在哪里(戴尔电脑键盘锁住)

    戴尔的键盘锁在哪里(戴尔电脑键盘锁住)

  • nova5pro耳机孔在哪(nova5z耳机孔)

    nova5pro耳机孔在哪(nova5z耳机孔)

  • Vue3 中 axios 的安装及使用(vue3+antd)

    Vue3 中 axios 的安装及使用(vue3+antd)

  • 公司名下的房产过户到个人要交多少税
  • 财务人员办理会计业务
  • 农产品普票进项税抵扣怎么做账
  • 工会支出发票抬头是企业名称可以吗
  • 房屋出租怎么交税?
  • 物业公司转售电费怎么开票
  • 收到认缴实收资本怎么做账务处理?
  • 税控系统维护费账务处理
  • 职工福利增值税的处理
  • 工程结算收入要交税吗
  • 总账会计需要做账吗
  • 在建工程可以质押吗
  • 培训费表格
  • 1697510839
  • 佣金回扣如何做账
  • chrome内核的浏览器是什么意思
  • linux如何放大字体
  • 温尼伯湖成因
  • 个体工商户加盟咖啡店
  • php之间传递数据
  • 直接材料成本计算公式
  • vue带参数跳转到详情页面
  • php操作mysql数据库
  • 长期待摊费用应该怎么摊销
  • 工业企业制造费用包括哪些
  • pytorch开源项目
  • 废钢收购无进项怎么处理
  • php数组中某个元素出现的个数
  • 工程项目出纳
  • 前端开发常用技术
  • chatteing
  • 差旅费用不用交税
  • 未分配利润为负数严重吗
  • 怎么计算多个表格的某一数据
  • pythonproperty
  • python怎么用?
  • 税控盘怎么看是否清盘
  • 新的会计制度
  • sql语句修改某个字段
  • 捐赠固定资产怎么入账
  • 水泥销售会计分录怎么做
  • 公司注销未认证怎么处理
  • 投资性房地产转换日的确定
  • 企业清算未收到发票
  • 建筑业营改增后,人工费不存在可抵扣
  • 企业装卸费抵扣怎么做账
  • 会议服务公司名称大全
  • 企业投资所得如何征税
  • windows server 2008的技巧:防止ping的方法
  • ubuntu help
  • 请问usb是什么意思啊
  • windows7手写功能
  • win8旗舰版官方下载
  • 电脑win 8系统
  • ie11forwindows10
  • windowsxp怎么改windows7
  • 如何显示文件后缀win10
  • tkmc.exe
  • win7 win10 win8
  • linux的含义
  • win7系统怎么修改开机密码
  • win7连接投屏器
  • linux的截图工具
  • Linux系统中如何编译C程序?
  • win7正版提示
  • win10正式版和专业版的区别
  • bootstrap table sum总数量统计实现方法
  • jquery()
  • threejs中文文档pdf
  • 单线程语言有哪些
  • 图像而已
  • 队列remove
  • javascript创建对象的几种方法
  • node.js中的http.response.writeHead方法使用说明
  • sed查找字符串
  • python多线程菜鸟教程
  • python3.9.1怎么用
  • 文化事业建设税减免政策2023
  • 会计审计和税务服务属于什么税目
  • 怎样查工商局备案
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设