javascript - 如何在 div 上显示所有控制台消息?

标签 javascript console.log

我有这个代码:

 if (typeof console  != "undefined")
          if (typeof console.log != 'undefined')
            console.olog = console.log;
          else
            console.olog = function() {};

        console.log = function(message) {
          console.olog(message);
          $('#debugDiv').append('<p>' + message + '</p>');
        };
        console.error = console.debug = console.info =  console.log

这对于简单的控制台日志非常有用,但我想要那里的一切!浏览器中的控制台向我显示的所有内容,我想要在那个 div 中:

例如:

  i170.png:1 GET http://localhost:3000/modules/core/img/items/i170.png 404 (Not Found)
    i183.png:1 GET http://localhost:3000/modules/core/img/items/i183.png 404 (Not Found)

没有显示在我创建的 div 中,我怎样才能让它全部显示在那里?

最佳答案

这里有两个问题。

1) 转储传递给 console.log 的所有参数

您在arguments 中获得函数的所有参数.所以这是一个可能的解决方案。

改变

console.log = function(message) {
      console.olog(message);
      $('#debugDiv').append('<p>' + message + '</p>');
};

console.log = function() {
      console.olog.apply(console, arguments);
      $('#debugDiv').append('<p>' + [].map.call(arguments, JSON.stringify) + '</p>');
};

2) 获取所有错误

最简单的解决方案是添加

window.onerror = console.log;

但请注意,有些错误不会触发 onerror 并且无法在 JS 中捕获。

关于javascript - 如何在 div 上显示所有控制台消息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30051772/

相关文章:

javascript - console.log 如何确定打印对象时要打印哪些属性?

polymer - 修复不赞成使用的文件

javascript - 重新加载 div 时的事件监听器

javascript - 为 javascript 创建正则表达式

javascript - 为什么在 Chrome 57 中内联 Javascript 比控制台中慢 10 倍以上?

javascript - 将 "new Number"分配给原型(prototype)字段在 Chrome 中打印为 {}

javascript - 传递 id 来具体化模态 laravel

javascript - 如何从异步调用返回响应?

javascript - 为什么 (x += x += 1) 在 C 和 Javascript 中的计算方式不同?

Node.js OpsWorks Layer 控制台日志