次のコードを使用して、0 から 15 までの乱数を生成します。関数 random() を使用して一意の番号を生成し、次のように関数を呼び出します。
cat=random();
乱数を配列 r[] に保存します。新しく生成された番号が配列にあるかどうかを確認します。重複が発生した場合は、もう一度 random() 関数を呼び出します。アラートを使用して、正しく機能しているかどうかを確認します
function random(){
var ran,max=0,min=0;
max=r.length;
alert(max);
if (max>15)
alert("no more space");
ran=Math.floor(Math.random() * 15) + 0;
for (i=0;i<max;i++)
if (ran==r[i])
min++;
if (min>0){
alert("calling");
random(); //return in here
}else{
i=parseInt(max);
r[i]=ran;
return(ran);
alert(ran);
}
}
しかし、重複が発生したときに関数内で返される変数は、誰でもこれを手伝うことができます。