Bezchybné protokolování konzoly - Triky CSS

Anonim
var Fb = (); //An empty object literal for holding the function Fb.log = function(obj, consoleMethod) ( if (window.console && window.console.firebug && window.console.firebug.replace(/^\s\s*/, '').replace(/\s\s*$/, '') !== '') ( if (typeof consoleMethod === "string" && typeof console(consoleMethod) === "function") ( console(consoleMethod)(obj); ) else ( console.log(obj); ) ) )

Pokud ve svém kódu JavaScript necháte zprávy console.log, console.info atd. A otevřete stránku v prohlížeči, jako je IE, může to zastavit načítání stránky a říkat, že „konzole není definována“, zejména pokud váš uživatel používá prohlížeč, který není IE8.

Tento fragment kódu vám umožní zanechat zprávu o protokolování jako takovou ve vašem kódu, pokud si přejete, a vaše stránka se správně vykreslí v IE nebo jiném prohlížeči, který nepodporuje zprávy konzoly.

Používání

Fb.log("This will be logged"); Fb.log("This will be displayed in console as info", "info");

Funkce FB.log přijímá dva parametry, první je „položka“, kterou chcete zobrazit v konzole firebug, a druhá je metoda firebug, kterou chcete použít pro protokolování, například informace, chyba atd. Pokud vynecháte druhý parametr, výsledek bude ekvivalentní console.log ()

Jednoduchý způsob pouze pro přihlášení

function ltc(what) ( try ( console.log(what); ) catch (e) () finally ( return; ) )
ltc("message");