# Depurando JS do Lado do Cliente {{#include ../../banners/hacktricks-training.md}} Depurar JS do lado do cliente pode ser complicado porque toda vez que você muda a URL (incluindo uma mudança nos parâmetros usados ou valores de parâmetros) você precisa **reiniciar o ponto de interrupção e recarregar a página**. ### `debugger;` Se você colocar a linha `debugger;` dentro de um arquivo JS, quando o **navegador** executar o JS, ele irá **parar** o **depurador** naquele lugar. Portanto, uma maneira de definir pontos de interrupção constantes seria **baixar todos os arquivos localmente e definir pontos de interrupção no código JS**. ### Substituições Substituições do navegador permitem ter uma cópia local do código que vai ser executado e executar essa em vez da do servidor remoto.\ Você pode **acessar as substituições** em "Dev Tools" --> "Sources" --> "Overrides". Você precisa **criar uma pasta local vazia para ser usada para armazenar as substituições**, então apenas crie uma nova pasta local e defina-a como substituição nessa página. Então, em "Dev Tools" --> "Sources" **selecione o arquivo** que você deseja substituir e com **clique direito selecione "Save for overrides"**. ![](<../../images/image (742).png>) Isso irá **copiar o arquivo JS localmente** e você poderá **modificar essa cópia no navegador**. Então, apenas adicione o comando **`debugger;`** onde você quiser, **salve** a alteração e **recarregue** a página, e toda vez que você acessar essa página da web **sua cópia local de JS será carregada** e seu comando de depuração mantido em seu lugar: ![](<../../images/image (594).png>) ## Referências - [https://www.youtube.com/watch?v=BW\_-RCo9lo8\&t=1529s](https://www.youtube.com/watch?v=BW_-RCo9lo8&t=1529s) {{#include ../../banners/hacktricks-training.md}}