(function(){
window.console = window.console||{log:0};
var nativeLog = window.console.log;
window.console.log = function() {
try {
// these conditions find all console.log output
// from bitcoinjs-0.1.3 but not much else
// (who else ends an extremely short first parameter with a space?)
if ((arguments.length == 2)
&& (arguments[0].length <= 5)
&& (arguments[0].slice(-2) === ': ')
) {
return;
};
nativeLog.apply(window.console, arguments);
} catch(e) {};
};
})();
6条答案
按热度按时间5cg8jx4n1#
您可以使用正则表达式。
例如,为了排除单词
browser-sync
,我使用^((?!browser-sync).)*$
。另请参见here
chrome 合金44.0.2403.125
jbose2ul2#
比上面的回答评论更进一步。
进入控制台模式(Windows上按Ctrl Shift J键),输入以下内容:
然后输入这个
第一行将本机实现保存在一个安全的位置,第二行几乎完成了您的请求。
对我有用。
nwwlzxa73#
我刚刚在博客上发表了我的解决方案,我修改了Ben Alman的"ba-debug"库,并制作了一个模块化的"Trace"对象,设计用于不同的模块或代码区域(由您定义)。
基本用途:
然后,当您要跟踪任何级别的诊断时,请执行以下操作:
然后,在您的页面或控制台中,您可以执行以下操作:
下面是我的博客post,了解更多细节和JavaScript文件:
wfypjpf44#
如果你可以控制页面脚本和扩展脚本,那么你可以通过你自己的函数来运行这两个脚本,在这个函数中你可以控制输出。
在您想要记录的任何位置,将console.log替换为outputToConsole()
fkvaft9z5#
这是我刚刚编写的解决相同问题的方法,与前面的答案相比,它的好处是正确处理
console.log
的多个参数,并防止由于缺少window.console.log而引发未捕获的异常。xdnvmnnf6#
如果正则表达式不是你的菜,你可以做另外两件事:
1.在Filter(过滤器)输入框中,您可以添加一个负匹配字符串,以防止显示以这些字符开头的消息。
示例:
将禁止显示如下消息:
上面显示的唯一消息是:
1.您可以做的另一件简单的事情是右键单击控制台日志中的任意一行,然后从弹出的上下文菜单中选择第一个选项:"隐藏来自___________的消息"(某个脚本名)。这将隐藏该脚本产生的所有错误消息。
要再次"取消隐藏"这些消息,请注意,不需要的脚本已添加到过滤器输入框中-只需从那里删除它,消息将返回。