Node.js中如何向console.table生成的控制台表格追加行数据
console.table追加新行解决方案
原生console.table没有提供追加行的内置能力,每次调用都会独立输出完整表格,你可以通过以下两种方案实现需求:
通用缓存方案(全环境适用)
提前定义全局的消息数据缓存数组,每次收到新Discord消息时先把新数据推入缓存,再重新调用console.table输出完整数组即可,示例代码如下:// 初始化存储消息的全局缓存数组 const discordMessageLogs = []; // Discord消息监听回调 client.on('messageCreate', message => { // 组装当前新消息的行数据 const newRow = { Type: message.channel.type, Username: message.author.tag, Message: message.content }; // 新数据追加到缓存 discordMessageLogs.push(newRow); // 输出包含所有历史数据的最新表格 console.table(discordMessageLogs); });如果不想控制台残留大量旧表格,可以在调用
console.table前新增console.clear(),清空旧内容后只展示最新的完整表格。Node.js环境增量打印方案
如果你在Node.js环境运行机器人,不想重复打印历史数据,可以自行计算表格列的最大宽度,手动格式化新行的内容后直接打印,不需要重打全量数据,视觉上和原生表格效果一致。
内容的提问来源于stack exchange,提问作者johng3587
相关产品推荐
相关产品推荐

