Trabajando con números aleatorios

Este sencillo ejemplo trata de como rellenar una lista de longitud dada, en este caso 10, con números aleatorios comprendidos entre 0 y 20, todos enteros.

Solución

<script>

var lista=new Array(10);

rellenar(lista);

document.write(lista);

function rellenar(matriz)

{

var largo, valor, ind;

largo = matriz.length;

for(ind = 0; ind < largo; ind++)

   {

    valor = Math.random()*20;

    matriz[ind] = Math.round(valor);

   }

}

</script>

Explicación

En este programa es interesante observar como los valores dados al argumento dentro de la función permanecen al finalizar ésta, de forma que la variable lista antes de pasar por la función estaba vacía y despues de ejecutarse rellenar posee valores numéricos aleatorios.

Esto ocurre así porque ese argumento es un objeto Array. JavaScript usa paso de argumentos por referencia cuando los parámetrso son objetos.

Otro punto es que esta función no usa return ya que no devuelve ningún valor.

El resto del código es muy simple: un bucle for() para recorrer la matriz e irle dando valores calculados con el método random del objeto Math redondeados al entero mas próximo mediante el método round.