将所有控制台javascript输出转储为字符串

时间:2018-11-30 11:50:21

标签: javascript node.js

我有一个问题,我需要获取所有console.log输出,是否可以将所有console.log输出转储到一个变量中?我使用node.js。一点背景:我有一个摩卡记者的输出,我想拥有所有输出来格式化它并通过电子邮件发送

2 个答案:

答案 0 :(得分:1)

您可以使用一种技巧,在decorator pattern之后将console.log替换为另一个功能:

var logs = ''; // logs needs to be defined for the += operator
const tmp = console.log;
console.log = function(...args){ 
    logs += arg + ' '
    tmp(...args)
}

很明显,使用全局变量不是很好,但是您可以从那里改进...

答案 1 :(得分:1)

基于@godot的答案:

background