Solucionado (ver solução)
Solucionado
(ver solução)
4
respostas

Sugestão para reiniciar jogo enquanto joga

Olá,

Implementei no interval uma função pra dar clearInterval quando o botão reiniciar jogo fosse clicado. Pois por exemplo se vc tem 60 segundos pra digitar uma frase muito grande e já perdeu muito tempo errando deveria poder reiniciar no meio do jogo.

Bom gostaria de saber se tem uma forma melhor de fazer e se ficou bom. A outra forma que pensei em fazer foi tornal global o interval, mas não gosto de variáveis globais rs. Logo fiz assim:

function inicializaCronometro(){
    var tempoRestante = tempoInicial;
    campo.one("focus", function(){
        var cronometroId = setInterval(function(){
            tempoRestante--;
            $("#tempo-digitacao").text(tempoRestante);
            if(tempoRestante <= 0){
                campo.attr("disabled", true);
                clearInterval(cronometroId);
            }
            $("#botao-reiniciar").click(function(){
                clearInterval(cronometroId);
            });
        }, 1000);
    });
}
4 respostas

Gabriel, bom dia!

Eu achei uma ótima solução! Está muito bem estruturada, sobre o uso de variáveis globais, você pode alterar para let, pois assim você será capaz de usar dentro desse escopo.

Continue assim e bons estudos!

solução!

Boa solução Gabriel!

Parabéns amigo! Realmente a poluição do escopo global não é bem vista em javascript, mas existem algumas formas de evitarmos que isso aconteça (poluição/colisão de variáveis). Como o Felipe falou, podemos utilizar "let", mas também conseguimos utilizar IIFE's (immediately Invoked Function Expression). Você pode dar uma olhada caso tenha ficado curioso, mas adianto que você ouvirá sobre elas no decorrer dos cursos de JavaScript.

Abraços e bons estudos!

Certo. Obrigado pessoal.

Eu já tinha visto let do ECMA6. Vou alterar. Sobre IIFE's não tinha ouvido falar, vou pesquisar sim.

Abraços

Boa Gabriel!

Estou fechando o tópico agora, porém sinta-se sempre a vontade para compartilhar suas dúvidas e descobertas conosco! Vamos nos ajudar!

Abraços e sucesso meu amigo!