Log JavaScript cross browser
Publicado por Emiliano Eloi Silva Barbosa (última atualização em 11/10/2013)
[ Hits: 7.401 ]
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);
}
Funções para converter de moeda para float e vice-versa
Redirecionador de acordo com o browser
Nenhum comentário foi encontrado.
Audacious, VLC e QMMP - que saudades do XMMS
SUNO OpenSource: Crie um servidor de gerador de música com IA
Instalação Completa e Configuração Básica do Void Linux
A Fundação da Confiança Digital: A Importância Estratégica de uma PKI CA na Segurança de Dados
Script para configurar o DOOM Retro no Linux
Script para organizar janelas em cascata no KDE Plasma 6 (Wayland)
Qual é a melhor forma de utilizar ponteiros? (2)
Crontab não executa algumas tarefas (7)
Instalador não reconhece SSD Sata. (0)









