Para pessoas como eu, que estudam JavaScript por si mesmas e não têm experiência em aprender outros idiomas, no início, a depuração de JavaScript também foi um ponto relativamente difícil. Muitas coisas básicas precisam ser exploradas por si mesmas, e esse processo é muito deprimente.
Pensei em aproveitar a oportunidade para demonstrar as fotos da postagem do blog de fechamento acima usando o Firebug, que pode ser considerado como um compartilhamento de experiência de depuração.
O código de amostra é o seguinte:
A cópia do código é a seguinte:
função fn () {
var max = 10;
Retornar a barra de função (x) {
if (x> max) {
console.log (x);
}
}
}
var fl = fn (),
max = 100;
fl (15);
Selecione Firebug - Script
A barra de monitoramento à direita pode ser objetos de janela e variáveis Max, FL e FN.
Ao mesmo tempo, você também pode ver as propriedades da janela abaixo. Tomando o local como exemplo, você pode executar diretamente a janela. Obviamente, ao se referir a propriedades e métodos de objetos de janela, você não precisa usar o formulário "window.xxx", mas use diretamente "xxx".
Volte ao ponto,
Volte para a coluna "Script", Debug JavaScript e veja os valores variáveis, pressionando "pontos de interrupção".
Existem vários conceitos que você pode entender primeiro: pontos de interrupção, entrada passo a passo, pular passo a passo e saída passo a passo. Não vou descrever aqui.
Desta vez, usamos principalmente o método de definir pontos de interrupção e inserir passo a passo.
Você pode clicar para definir um ponto de interrupção na marca da linha esquerda e clique com o botão direito do mouse para fazer um julgamento regular.
Vários pontos de interrupção podem ser definidos e os pontos de interrupção definidos podem ser excluídos na coluna "ponto de interrupção".
Aqui você quebra o ponto diretamente no início da tag de script e atualiza a página.
Neste momento
1. O objeto de janela original na área de monitoramento à direita se torna isso e aponta para a janela. A saída esta.Localização no "console" obterá o mesmo resultado que o local.
2. As variáveis globais max e fl são inicializadas para indefinidas
3. Fn () é uma declaração de função, porque o analisador lerá a declaração de função primeiro e a disponibilizará antes de executar qualquer código (acessível)
Clique no botão "Enter uma etapa única" no canto superior direito
Execute o código passo a passo e visualize isso, as alterações no valor de cada variável e a pilha na área de monitoramento. Você pode consultar o blog recomendado.
Então venha outro exemplo disso
O código é o seguinte:
A cópia do código é a seguinte:
var name = 'a janela';
var obj = {
Nome: 'The Local',
getNamefunc: function () {
console.log (this.name);
Return function () {
console.log (this.name);
};
}
};
var c = obj.getNamefunc ();
c ();
Ainda "interpõe", você pode ver que, ao executar a linha C () de código C (você entra no GetNameFunc, isso muda de apontar para o objeto de janela para o OBJ e o console sai 'o local'.
A execução passo a passo permite que você veja a lógica em execução de todo o código muito claramente.
O exposto acima é um resumo do método de usar a função de depuração da Firebug para entender os fechamentos de JavaScript e isso. Espero que gostem