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は配列の長さ、いくつ要素ようそが入っているかをあらわします。