Actualmente estoy tratando de crear una serpiente dentro de un micro: bit. Pero un problema es que cuando uso una declaración if para detectar si la serpiente está tocando una manzana, funcionará una vez, pero luego llamo a la función que dice
function createApple() { let apple = game.createSprite(randint(0, 5), randint(0, 5)); }
La creación de variables con una declaración let la convierte en una variable local que solo funciona con otras declaraciones dentro de la función, pero cuando intento crear una variable usando var, dice que debo definir variables usando una declaración let. ¿Hay alguna forma de crear variables globales dentro de funciones y otros bloques de código que funcionen? (Por favor, responda de una manera que no sea subjetiva a mi situación y que abarque muchos escenarios similares para las personas, incluyéndome a mí)
(Aquí está mi declaración if si alguien lo requiere de alguna manera para responder)
loops.everyInterval(1, function () { if (snakeHead.isTouching(apple)) { apple.delete(); createApple(); } });
Puede declarar la variable fuera de la función para hacerla global. Si comienza con una variable global vacía, debe agregar el tipo de la variable detrás :
let apple : game.LedSprite function createApple() { apple = game.createSprite(randint(0, 5), randint(0, 5)); }
Si no conoce el tipo de variable (en este caso game.LedSprite
), puede encontrarla pasando el mouse sobre la función createSprite
, vea la captura de pantalla: