Números aleatorios con JavaScript
JavaScript nos proporciona un método para obtener números aleatorios a través del método random de la clase Math, este método devuelve un número decimal entre 0 y 1::
<script type="text/javascript"> function ejemplo1() { var aleatorio = Math.random();
alert("Número aleatorio entre 0 y 1: "+ aleatorio);} </script>
Con este código obtendremos el mencionado número, entre 0 y 1 y además lo veremos impreso en una ventana.
Pero seguramente nos será más util, un número entre 0 y 10 por ejemplo. Veamos como:
<script type="text/javascript"> function ejemplo2() { var aleatorio = Math.round(Math.random()*10); alert("Número aleatorio entre 0 y 10:"+aleatorio);} </script>;
Con esto obtendremos un número entre 0 y 10, ambos incluídos. Lo único que hemos hecho ha sido multiplicar por 10 y luego redondear el número con el método round.
Si lo que queremos es un número entre 0 y cualquier otro número, entonces ya está, no necesitamos más, pero si queremos un intervalo distinto, como por ejemplo entre 15 y 40 este código no nos sirve, tenemos que hacerle un pequeño arreglo, como aquí:
<script type="text/javascript"> function aleatorio(a,b) { return Math.round(Math.random()*(b-a)+parseInt(a)); } </script>
Hemos creado una función que devuelve números aleatorios entre 'a' y 'b'.
Suponiendo que a = 15 y b = 40 primero se haría: Math.random()*(40-15)
Lo que da un número entre 0 y 25 (con números decimales).
Entonces sumamos 'a=15', para tener un número entre 15 y 40,
todavía con decimales y por último, utilizamos Math.round()
para eliminar los decimales.
En el Ejemplo 3 hemos construido un pequeño formulario que podemos rellenar con el míninmo y el máximo y cuando apretemos sobre el botón se mostrará el valor aleatorio.