显示javascript控制台中的消息
display messages from the javascript console
如何使用javascript在javascript控制台中循环消息并将其显示给用户,例如,将它们逐行添加到像div
这样的容器元素中。
我知道如何使用console.log
将消息添加到控制台,但我的问题是,有没有任何方法可以检索已添加的消息。
要做到这一点,我们的想法是拦截发送到控制台的任何内容。这是一个跨浏览器的解决方案。
function takeOverConsole(){
var console = window.console
if (!console) return
function intercept(method){
var original = console[method]
console[method] = function(){
var message = Array.prototype.slice.apply(arguments).join(' ')
// do sneaky stuff
if (original.call){
// Do this for normal browsers
original.call(console, message)
}else{
// Do this for IE
original(message)
}
}
}
var methods = ['log', 'warn', 'error']
for (var i = 0; i < methods.length; i++)
intercept(methods[i])
}
从接管控制台日志/中发现
在这里我调用函数,并做一个简单的日志"嘿"。它会拦截它,我会提醒被拦截的信息。http://jsfiddle.net/Grimbode/zetcpm1a/
要解释此功能的工作原理:
我们用实际控制台声明一个变量
console
。如果console
是undefined
,我们立即停止并离开函数。我们为不同的控制台消息类型声明
var methods = ['log', 'warn', 'error']
- 我们循环遍历这些方法,调用
intercept
函数并发送console type
(字符串:"log"、"warn"等) Intercept函数只是将侦听器~应用于该类型的控制台消息。在我们的案例中,我们将侦听器应用于日志、警告和错误。
我们检索消息并将其放入消息变量中。
由于我们截获了消息,它不会显示在控制台中,所以我们继续使用original.call()或original()将其添加到控制台中。
相关文章:
- 有没有一种方法可以在控制台关闭的情况下让console.log()在IE中记录消息
- 如何用消息正确抽象控制台.log颜色变量
- page.evaluate() 未打印控制台消息
- 如何发送控制台消息和错误以提醒
- 使用javascript在HTML的输出窗口中打印控制台消息
- 正在获取控制台消息的堆栈跟踪
- Node Defender控制台没有't显示console.error()消息
- socket.io 不记录控制台消息
- 为什么此 IF 语句不返回控制台消息
- 量角器 - 如何在输出文本文件中生成执行报告或显示控制台.log消息
- 如何在生产服务器上测试、调试和查看 Node js 应用的控制台日志消息
- 获取控制台包装器以在正确的行上记录消息
- 无法同时控制台.log(req.flash(“error”))和呈现消息
- JavaScript 和 if-else 函数的新手.(控制台日志中没有错误消息)
- 在设计Javascript API时,我应该引发TypeError还是忽略控制台消息
- Node.js Visual Studio工具如何获取错误/控制台消息以输出VS
- 如何抑制 LivePass 控制台消息?(维密欧播放器)
- 使用浏览器控制台使用Javascript在Facebook中发送聊天消息
- 在js中检查(读取)控制台的消息
- Firebug和chrome控制台都有消失的console.log消息