Log JavaScript cross browser
Publicado por Emiliano Eloi Silva Barbosa (última atualização em 11/10/2013)
[ Hits: 7.193 ]
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); }
Assinatura nas postagens no Viva o Linux
JSOO - Classe para manipular Querystring
Nenhum coment�rio foi encontrado.
Servidor de Backup com Ubuntu Server 24.04 LTS, RAID e Duplicati (Dell PowerEdge T420)
Visualizar câmeras IP ONVIF no Linux sem necessidade de instalar aplicativos
Atualizar Debian Online de uma Versão para outra
Instalar driver Nvidia no Debian 13
Redimensionando, espelhando, convertendo e rotacionando imagens com script
Debian 13 Trixie para Iniciantes
Convertendo pacotes DEB que usam ZSTD (Padrão Novo) para XZ (Padrão Antigo)