Log JavaScript cross browser

Publicado por Emiliano Eloi Silva Barbosa (última atualização em 11/10/2013)

[ Hits: 6.842 ]

Homepage: http://emilianoeloi.com.br

Download 5881.index.html




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.

  



Esconder código-fonte

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

Scripts recomendados

criando uma tabela html

Sistema de Login

Contador

Jogo da Senha

Adicionar/Remover Classe de um Elemento HTML


  

Comentários

Nenhum comentário foi encontrado.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts