Log JavaScript cross browser
Publicado por Emiliano Eloi Silva Barbosa (última atualização em 11/10/2013)
[ Hits: 7.383 ]
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);
}
Adicionar/Remover Classe de um Elemento HTML
Redirecionador de acordo com o browser
Passagem automática de imagens com efeito Opacity
Nenhum comentário foi encontrado.
Papagaiando o XFCE com temas e recursos
WhatsApp com Chamadas no Linux via Waydroid
XFCE - quase um Gnome ou Plasma mas muito mais leve
LXQT - funcional para máquinas pererecas e usuários menos exigentes
Instalando o COSMIC DE no Gentoo (systemd)
Centralizar Logo com Transparência via ImageMagick
Removendo entradas de boot UEFI "fantasmas" via terminal
Atualizações de Segurança Automáticas no Debian
Como cortar as partes de um vídeo com passagens de áudio em branco
Reunir material [RESOLVIDO] (4)
Uma pergunta bem simples mas não achei resposta (ainda) [RESOLVIDO] (4)
Reflexão sobre a sobrevivência do Gentoo Linux (7)









