Log JavaScript cross browser
Publicado por Emiliano Eloi Silva Barbosa (última atualização em 11/10/2013)
[ Hits: 6.843 ]
Homepage: http://emilianoeloi.com.br
O comando console.log veio para auxiliar o desenvolvimento front-end, ajudando no debug do JavaScript. Depois de muito apagar consoles log código afora eu desenvolvi o código bem simples que possibilitar ativar/desativar o log, evitando publicações que imprimam logs desnecessários e deixando os logs em lugares estratégicos, para uma manutenção posterior.
Exemplo: em vez de utilizar o window.console.log("chave","valor"); utiliza-se o Dbg.log("chave","valor"); que por sua vez encapsula o console.log ou alert se for desenvolver para um browser mais antigo. Quando for publicar, basta mudar o SHOW_DEBUG para false.
var SHOW_DEBUG = true; var CAN_ALERT_BOX = true; var Dbg = { canAlert: SHOW_DEBUG, debug: CAN_ALERT_BOX, log: function(k, v) { if (this.debug) { if (window.console && window.console.log) { window.console.log(k, v); } else if (this.canAlert) { alert(k + ": " + v); } } }, error: function(k, v) { if (this.debug) { if (window.console && window.console.error) { window.console.error(k, v); window.console.trace(); } else if (this.canAlert) { alert(k + ": " + v); } } } }; /* === EXEMPLO === */ var obj = {"nome":"ECMAScript", "apelido":"Javascript", "data":null}; Dbg.log(" Dbg log - obj", obj); try{ Dbg.log(" try execute obj.data", obj.data); Dbg.log(" try execute obj.data.ano", obj.data.ano); }catch(e){ Dbg.error("Exceção",e); }
Motor de busca para o Viva o Linux no Firefox
JSOO - Classe para manipular Querystring
Nenhum comentário foi encontrado.
Atenção a quem posta conteúdo de dicas, scripts e tal (2)
Manutenção de sistemas Linux Debian e derivados com apt-get, apt, aptitude e dpkg
Melhorando o tempo de boot do Fedora e outras distribuições
Como instalar as extensões Dash To Dock e Hide Top Bar no Gnome 45/46
Como criar um robot em NTSL (Nelogica Trading System Language) para Profitchart
Use o Google PageSpeed Insights para verificar um site
Como Atualizar Fedora 39 para 40
Como adicionar módulo de saúde da bateria dos notebooks Acer ao kernel... (28)
Sistema da Coréia do Norte - Red Star OS (18)
Problemas com o Lutris e o Wine no Slackware 15.0 (1)
redirecionando saida de comando touch para o AWK[RESOLVIDO] (18)