Hola, no sé por qué me sale este error: Uncaught SyntaxError: Unexpected token '{' El error me dice que esta en la línea de código 33 , p...

Bryan C. Orellana

Bryan C. Orellana

Pregunta
studenthace 6 años

Hola, no sé por qué me sale este error:

Uncaught SyntaxError: Unexpected token '{'

El error me dice que esta en la línea de código 33 , pero ya la vi y esta tal cual lo hace Sacha.

le dejo mi código :

<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Simon Dice</title> <!-- Styles --> <link rel="stylesheet" href="css/estilos.css"> </head> <body> <div class="gameboard"> <div id="celeste" class="color celeste left" data-color="celeste"></div> <div id="violeta" class="color violeta right" data-color="violeta"></div> <div id="naranja" class="color naranja left" data-color="naranja"></div> <div id="verde" class="color verde right" data-color="verde"></div> <button id="btnEmpezar" class="btn-start" onclick="empezarJuego()">Empezar a jugar!</button> </div> <script> const violeta = document.getElementById('violeta') const naranja = document.getElementById('naranja') const verde = document.getElementById('verde') const celeste = document.getElementById('Celeste') const btnEmpezar = document.getElementById('btnEmpezar') //utilamos getElementById para obtener el id del elemento html para poder editarlo en js. class Juego { constructor() { this.inicializar() this.generarSecuencia() this.siguienteNivel() } } generarSecuencia () { this.secuencia = new Array(10).fill(0).map(n => Math.floor(Math.random()*4) ) } siguienteNivel() { this.iluminarSecuencia() } transformarNumeroAColor(numero){ switch(numero) { case 0: return 'celeste' case 1: return 'violeta' case 2: return 'naranja' case 3: return 'verde' } } iluminarSecuencia() { for (var i = 0; this.nivel; i++) { const color = this.transformarNumeroAColor(this.secuencia [i]) setTimeout (()=> this.iluminarColor(color), 1000 * i) } } iluminarColor(color){ this.colores[color].classList.add('light') setTimeout(()=> this.apagarColor(color), 350) } apagarColor(color){ this.colores[color].classList.remove('light') } function empezarJuego() { window.juego = new Juego() } </script> </body> </html>```
2 respuestas
para escribir tu comentario
    Sebastián Riátiga

    Sebastián Riátiga

    studenthace 6 años

    Hola, bryan.carmodi.

    Tengo unas observaciones adicionales a las que te hizo aldini123:

    • Te faltó colocar la función de inicializar()
    • En el array, estás colocando la palabra new pegado y es separada.
    • Le diste cierre al paréntesis de class Juego justo después de cerrar el deconstructor y este se cierra al final, justo antes de funcion empezarJuego
    • En el ciclo for te falto poner i < this.nivel

    Te dejo tu código listo ;):

    class Juego { constructor() { this.inicializar() this.generarSecuencia() this.siguienteNivel() } inicializar() { btnEmpezar.classList.add('hide') this.nivel = 1 this.colores = { celeste, violeta, naranja, verde } } generarSecuencia () { this.secuencia = new Array(10).fill(0).map(n => Math.floor(Math.random()*4) ) } siguienteNivel() { this.iluminarSecuencia() } transformarNumeroAColor(numero) { switch(numero) { case 0: return'celeste' case 1: return'violeta' case 2: return'naranja' case 3: return'verde' } } iluminarSecuencia() { for (var i = 0; i < this.nivel; i++) { const color = this.transformarNumeroAColor(this.secuencia [i]) setTimeout (()=> this.iluminarColor(color), 1000 * i) } } iluminarColor(color) { this.colores[color].classList.add('light') setTimeout(()=> this.apagarColor(color), 350) } apagarColor(color) { this.colores[color].classList.remove('light') } } function empezarJuego() { window.juego = new Juego() }
    Aldo Abraham Cruz Sandoval

    Aldo Abraham Cruz Sandoval

    studenthace 6 años

    Tiene varios errores tu código: -Estás poniendo classJuego junto y es separado en la línea 25 -Después estás poniendo una llave de más en la línea 31 -Luego estás poniendo tus case con el valor junto: case0 y es separado -Igual en tus function...

    Corrige esos errores.

Fundamentos de JavaScript 2018

Fundamentos de JavaScript 2018

JavaScript es un lenguaje de programación que se trabaja desde el navegador. Construye programas, conoce el entorno, los condicionales y las estructuras repetitivas. Aprende cuáles son y cómo se declaran las variables y las funciones de JS.

Fundamentos de JavaScript 2018
Fundamentos de JavaScript 2018

Fundamentos de JavaScript 2018

JavaScript es un lenguaje de programación que se trabaja desde el navegador. Construye programas, conoce el entorno, los condicionales y las estructuras repetitivas. Aprende cuáles son y cómo se declaran las variables y las funciones de JS.