while switch for javascript loops break

switch - return javascript



uso ilegal de declaraciĆ³n de interrupciĆ³n; javascript (2)

Debes asegurarte de que requestAnimFrame deje de llamarse una vez que juego == 1. Una instrucción break solo sale de un bucle tradicional (por ejemplo, while() ).

function loop() { if (isPlaying) { jet1.draw(); drawAllEnemies(); if (game != 1) { requestAnimFrame(loop); } } }

O, como alternativa, puede omitir la segunda condición if y cambiar la primera condición a if (isPlaying && game !== 1) . Tendría que hacer una variable llamada juego y darle un valor de 0. Agregue 1 a cada juego.

Cuando esta variable se convierte en una cierta cantidad, quiero que el ciclo se detenga, pero sigo obteniendo el error, "Untaught SyntaxError: Illegal break statement".

function loop() { if (isPlaying) { jet1.draw(); drawAllEnemies(); requestAnimFrame(loop); if (game==1) { break; } } }


break es salir de un bucle como para, mientras que, cambiar etc. que no tiene aquí, necesita usar return para interrumpir el flujo de ejecución de la función actual y regresar a la persona que llama.

function loop() { if (isPlaying) { jet1.draw(); drawAllEnemies(); requestAnimFrame(loop); if (game == 1) { return } } }

Nota: Esto no cubre la lógica detrás de la condición if o cuándo volver del método, para eso necesitamos tener más contexto con respecto al método drawAllEnemies y requestAnimFrame , así como también cómo se actualiza el valor del game