Bezbłędne rejestrowanie konsoli - CSS-Tricks

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

Jeśli zostawisz komunikaty console.log, console.info itp. W kodzie JavaScript i otworzysz stronę w przeglądarce takiej jak IE, może to całkowicie zatrzymać ładowanie strony, mówiąc, że „konsola nie została zdefiniowana”, zwłaszcza jeśli użytkownik korzysta z przeglądarki innej niż IE8.

Ten fragment kodu pozwoli ci zostawić wiadomość logowania jako taką w kodzie, jeśli chcesz, a twoja strona będzie poprawnie renderowana w IE lub dowolnej innej przeglądarce, która nie obsługuje komunikatów konsoli.

Stosowanie

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

Funkcja FB.log przyjmuje dwa parametry, z których pierwszy to „pozycja”, którą chcesz wyświetlić w konsoli programu firebug, a drugi to metoda firebug, której chcesz użyć do logowania, np. Info, error, itp. Jeśli pominiesz drugi parametr wynik będzie równoważny z console.log ()

Prosty sposób na log

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