有没有办法捕获JavaScript控制台输出,所以我可以在别处引用它?

时间:2015-03-04 04:33:20

标签: javascript

如果可能的话,我想在我为我的应用程序开发的日志窗口中显示JavaScript控制台输出。有很多解决方案可以将消息发布到控制台,但我找不到任何可以捕获控制台输出的解决方案。

我甚至不确定这是否可行。控制台输出是否存储在DOM的某个级别的对象中?

提前感谢任何提示/建议。

2 个答案:

答案 0 :(得分:3)

您可以覆盖您要使用的控制台功能

if(window.console && console.log){
   console.log = function(){
      var args = arguments;
      /* process args to your app */ 
   }
}

答案 1 :(得分:0)

您可以使用类似下面的函数重载console.log,该函数可以以您喜欢的任何形式保存消息,以及输出到控制台。这个特定的实现有点过于简单,因为它只需要一个参数,bu可以很容易地谷歌其他例子。

var myLog = [];

console.log = function (text) {
    console.info(text)
    myLog.push(text);
}
console.log("abc")
console.info(myLog);