Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
1
respuesta

Math.random()

Comentario personal sobre el número aleatorio en el juego:

Después de ver el video, me puse a experimentar con la generación del número aleatorio y también revisé la documentación oficial de MDN sobre Math.random() y los métodos relacionados. Me llamó la atención que en el video se usa Math.floor() para eliminar los decimales, pero también descubrí que Math.trunc() puede cumplir esa misma función en este caso.

Math.trunc() elimina la parte decimal sin importar si el número es positivo o negativo, mientras que Math.floor() redondea hacia abajo. Como en nuestro juego el número siempre es positivo (porque viene de Math.random()), ambos métodos funcionan bien.

Probé el código con ambos:

Math.floor(Math.random() * 10) + 1;
Math.trunc(Math.random() * 10) + 1;

Y en ambos casos obtuve números enteros entre 1 y 10, sin que aparezca el 0.

Me gustó mucho entender cómo se anidan las funciones y cómo el navegador ejecuta primero lo que está dentro del paréntesis. También me pareció clave el detalle de sumar 1 al final para incluir el 10 y excluir el 0.

1 respuesta

¡Hola! Qué bueno que te tomaste el tiempo para experimentar y explorar las diferencias entre Math.floor() y Math.trunc(). Ambos métodos pueden ser utilizados para eliminar la parte decimal de un número, pero como bien mencionaste, tienen comportamientos diferentes cuando se trata de números negativos. En el contexto de tu juego, donde los números son siempre positivos, ambos métodos funcionan perfectamente para generar números enteros entre 1 y 10.

Tu comprensión sobre cómo se anidan las funciones y la importancia de sumar 1 para ajustar el rango es clave para asegurar que el número generado esté dentro del intervalo deseado. Esto demuestra que estás entendiendo bien cómo manipular las funciones en JavaScript para lograr el resultado que necesitas.

Continúa explorando y experimentando de esta manera, ya que es una excelente forma de aprender y consolidar tus conocimientos. Espero haber aclarado tus dudas y que sigas disfrutando del aprendizaje de JavaScript. ¡Espero haber ayudado y buenos estudios!