Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

175
Vistas
ReferenceError: no se puede acceder a 'Bloquear' antes de la inicialización

Estoy escribiendo un código js para hacer tetris para un proyecto escolar, y me quedé atascado con una clase que escribí. Este es el código:

 let canvas = document.getElementById("mainWindow"); let cnv = canvas.getContext("2d"); class Block { //da fixare constructor(shape, color, rotate) { this.shape = shape; this.color = color; this.rotate = rotate; } } function randomInt(min, max) { min = Math.ceil(min); max = Math.floor(max); return Math.floor(Math.random() * (max - min + 1)) + min; } function randomColor(min, max) { min = Math.ceil(min); max = Math.floor(max); let color = Math.floor(Math.random() * (max - min + 1)) + min; switch (color) { case 1: return "red"; case 2: return "yellow"; case 3: return "blue"; case 4: return "green" case 5: return "light-blue"; case 6: return "indigo"; case 7: return "orange"; } } function newBlock() { let blockObj = new Block(randomInt(1, 1), randomColor(1, 1), randomInt(1, 1)); console.log("figura generata: "); if (blockObj.shape == 1) { console.log("quadrato "); } if (blockObj.color == "red") { console.log("rosso "); } if (blockObj.rotate == 1) { console.log("orizzontale"); } } newBlock();
 <canvas id="mainWindow"></canvas>
Cuando trato de llamar a la función newBlock(), la consola me da este error:

 Uncaught ReferenceError: Cannot access 'Block' before initialization at newBlock (tetris.js:43:5) at <anonymous>:1:1

También busqué en Internet la solución, pero todos dicen que debe declarar la clase antes que la función, como en mi código. ¿Cómo puedo arreglar esto?

about 4 years ago · Juan Pablo Isaza
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda