JavaScript»基礎»配列 同じ数がダブらないようにランダムな数をつくる
ファイル名: js-basic/quest_00335.html
下のソースコードをうつして、0から9のランダムな数を同じ数がダブらないように5個つくって、
ソースコード
// 配列に0から9の数をならべて入れる
const numbers = [];
for (let i = 0; i < 10; i++) {
numbers.push(i);
}
// 配列のなかみをシャッフルする
for (let i = numbers.length - 1; i > 0; i--) {
const r = Math.floor(Math.random() * (i + 1));
const tmp = numbers[i];
numbers[i] = numbers[r];
numbers[r] = tmp;
}
// 配列のいちばん後ろに入ってるデータを取り出すx5回
for (let i = 0; i < 5; i++) {
document.write(numbers.pop(), "<br>");
}
解説
配列に入れた値をあらわすには、その配列の何番目にあるかを指定します。0から数え始めることに気をつけましょう。
lengthは配列の長さ、いくつ