Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Código de erro: Out of Memory

Por que meu código da como "Código de erro: Out of Memory"? Sendo que se eu copiar e colar o código da aula - que é maior do que esse - roda certinho no chrome.

<meta charset="UTF-8">

<input/><br>
<button>Adivinha</button>

<script>
    var inp = document.querySelector("input");
    inp.focus();
    var botao = document.querySelector("botao");

    function numero(){

        return Math.round(Math.random() * 10);
    }

    function geraNum(quantidade){

        var contador = 1;
        var segredos = [];

        while(contador <= quantidade){

            segredos.push(numero());
        }

        return segredos;
    }

    var segredos = geraNum(5);
    console.log(segredos);

</script>
1 resposta
solução!

Bom Dia Arthur,

O problema na verdade não está com o Chrome. O seu código while nunca incrementa o contador então ele fica rodando eternamente e isso gera um problema de memória no chrome porque ele rodaria até infinito se fosse possível.

Isso acontece porque o while literalmente significa enquanto. Então ele executa o seu código enquanto a expressão for verdade, e como você nunca aumenta o contador ele vai ser para sempre "<=" a quantidade.

Para resolver isso é simples só precisa adicionar uma linha no seu código:

    while(contador <= quantidade){
         segredos.push(numero());
        contador++;
        }