从控制台隐藏错误和警告

时间:2014-02-04 09:58:40

标签: javascript jquery

在PHP和其他语言中,有一些方法可以抑制错误/警告消息。

在javascript或jquery中是否有办法防止错误和警告被写入控制台日志?

7 个答案:

答案 0 :(得分:13)

可以在某种程度上处理错误,但如果您没有处理错误,那么它会进入浏览器,您无法阻止浏览器显示错误。您可以编写代码,以便获得最小的错误,并尽可能使用try-catch来处理异常。

try
{
    //statements suspected to throw exception.
}
catch(e)
{
}

答案 1 :(得分:1)

这是基于浏览器的功能,您可以为浏览器安装任何插件,然后您可以隐藏错误/警告

我前往about:config浏览Firefox并将javascript.options.strict设置为false并且警告消失了。但我觉得这不是一个解决方案。

howtocreate.co.uk/strictJSFirefox.html 

答案 2 :(得分:0)

你只需将一些代码添加到它将起作用的脚本中。 铬:

console._commandLineAPI.clear();

Safari浏览器:

console._inspectorCommandLineAPI.clear();

您可以创建自己的变量,该变量适用于:

if (typeof console._commandLineAPI !== 'undefined') {
    console.API = console._commandLineAPI;
} else if (typeof console._inspectorCommandLineAPI !== 'undefined') {
    console.API = console._inspectorCommandLineAPI;
} else if (typeof console.clear !== 'undefined') {
    console.API = console;
}

之后,您只需使用

即可
console.API.clear().

答案 3 :(得分:0)

在对该问题进行了一些研究和开发之后,我遇到了该解决方案,该解决方案将根据您的选择隐藏警告/错误/日志。

(function () {
    var origOpen = XMLHttpRequest.prototype.open;
    XMLHttpRequest.prototype.open = function () {        
        console.warn = function () { };
        window['console']['warn'] = function () { }; // For confirmation again
        this.addEventListener('load', function () {                        
            console.warn('Something bad happened.');
            window['console']['warn'] = function () { };
        });        
    };
})();

将此代码添加到JQuery插件之前(例如/../jquery.min.js),即使这是不需要JQuery的JavaScript代码。因为JQuery本身包含一些警告。

答案 4 :(得分:0)

对用户最好 console.clear(); 在您90%的情况下都会解决

答案 5 :(得分:0)

隐藏所有Javascript控制台警告的一种肮脏方式是通过覆盖控制台对象的warn方法:

console.warn = () => {};

显然,它还可以与其他控制台方法一起使用

答案 6 :(得分:-1)

我通常只是去执行包含该特定console.log警告的功能并将其注释掉。