Foutloze consolelogging - CSS-trucs

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); ) ) )

Als u console.log, console.info, enz. Berichten in uw JavaScript-code achterlaat en de pagina opent in een browser zoals IE, kan het laden van de pagina volledig stoppen met de mededeling dat 'console niet gedefinieerd', vooral als uw gebruiker een niet IE8-browser gebruikt.

Met dit codefragment kunt u het logboekbericht als zodanig in uw code achterlaten als u dat wilt en uw pagina wordt correct weergegeven in IE of elke andere browser die de consoleberichten niet ondersteunt.

Gebruik

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

De functie FB.log accepteert twee parameters, de eerste is het 'item' dat u in de firebug-console wilt weergeven en de tweede is de firebug-methode die u wilt gebruiken voor het loggen, zoals info, fout, enz. als je de tweede parameter weglaat, zal het resultaat gelijk zijn aan console.log ()

Eenvoudige log-only manier

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