Luis Alejandro Ortega Bermudez
PreguntaMe sale este error : Uncaught TypeError: Cannot read property ‘classList’ of undefined
class Juego { //la logica del programa constructor() { this.inicializar() this.generarSecuencia() this.siguienteNivel() } inicializar() { btnEmpezar.classList.add('hide') this.nivel = 1 this.colores = { celeste: celeste, violeta: violeta, naranja: naranja, verde: verde } } generarSecuencia(){ this.secuencia = new Array(10).fill(0).map(n => Math.floor(Math.random() * 4)) } siguienteNivel(){ this.iluminarSecuencia() } transformarNumeroAColor(num){ switch(num){ case 0: return 'celeste' case 1: return 'violeta' case 2: return 'naranja' case 3: return 'verde' } } iluminarSecuencia(){ for(let i = 0; i < this.nivel; i++){ const color = this.transformarNumeroAColor(this.secuencia[i]) // aca transforme la secuencia en colores setTimeout(this.iluminarColor() , 1000 * i) } } iluminarColor(color) { this.colores[color].classList.add("light") setTimeout(() => this.apagarcolor() , 350) } apagarcolor(color) { this.colores[color].classList.remove("light") } } function empezarJuego() { //esta es la funcion del boton emepezar window.elJuego = new Juego() } <code>
Luis Alejandro Ortega Bermudez
Ya encontre el error no habia declarado la funcion dentro del setTimeout jaja //me respondi solo
setTimeout(() => this.iluminarColor(color) , 1000 * i) <code>