使い方
リスト入力欄に名前や項目を1行ずつ貼り付けます。「当選者を選ぶ」では選ぶ人数を決め、重複を許可するかどうか(同じ項目が何度も選ばれてよいか)を選びます。重複を許可しない場合は「選ばれた項目をリストから外す」をオンにすると、次の抽選で既に当選した人を自動的に除いて選び直せます。「順番を混ぜる」はリスト全体をランダムな順番に並べ替え、「チーム分け」は希望するチーム数に人数をできるだけ均等に分けます。
公平に選ばれる仕組み
このツールはMath.random()の代わりにブラウザのcrypto.getRandomValuesを使います。順番を混ぜるときはFisher–Yatesシャッフルを使ってすべての並び順が完全に同じ確率で出るようにし、リストから何人か選ぶときは棄却サンプリング(rejection sampling)で剰余演算の偏りをなくし、すべての枠が同じ確率で選ばれるようにしています。同じテキストの行が複数あっても、行(枠)ごとに別々の応募として扱われます。
どんなときに使うか
景品の抽選、発表順の決定、掃除当番やグループ分け、スポーツのチーム分け、会議での発言順の決定のように、人や項目をランダムに選んだり分けたりしたいときに使います。
今回のセッション履歴
同じページで実行した抽選・シャッフル・チーム分けの結果が、画面下の履歴に順番に記録されます。何度も抽選を繰り返すときに、前の結果を見返したりコピーしたりできます。この履歴はこのブラウザタブだけにあり、再読み込みすると消えます。
プライバシーについて
入力したリストと抽選結果はすべてこのブラウザの中だけで計算され、どこにも送信されません。入力したリストはこのブラウザのローカルストレージ(localStorage)に保存され、次回訪問時にも残りますが、「リストを消去」ボタン(またはブラウザの設定でこのサイトのデータを削除)でいつでも消せます。結果と今回のセッション履歴はどこにも保存されず、ページを再読み込みしたり閉じたりすると消えます。