數字挑選器速查表是該挑選器所暴露的每個控制項、限制與輸出的快速參考摘要,讓您可以設定範圍、要求最多 1,000 個整數,並選擇是否允許重複,而無需每次重新閱讀說明。下列速查表說明的是隨機數字產生器,此工具完全在您的瀏覽器中執行,因此沒有任何範圍或結果會離開裝置。您輸入最小與最大的安全整數,兩個端點都包含在內,挑選一個介於 1 到 1,000 之間的數量,決定是否允許重複,然後點擊「產生」。隨機性是從瀏覽器的 Web Crypto 介面取得,接著使用拒絕抽樣法映射到您的範圍中,這種方法會捨棄原始隨機字的未完成尾端,使得包含範圍內的每個整數都恰好對應相同數量的可接受原始值。結果會以逗號分隔的整數顯示,您可以選取並複製;而變更任何輸入會清除先前的清單,如此一來,舊的結果就不會被誤認為是由新設定所產生的輸出。

number picker cheat sheet
數字挑選器速查表:輸入、限制與設定

數字挑選器上每個控制項的作用

數字挑選器上的每個設定都對應到一種特定的行為。當您需要記住某個輸入是否包含端點、什麼算是有效值,或是點擊「產生」後挑選器會做什麼時,請將此表格作為快速查詢使用。

控制項接受內容對輸出的影響
最小值任何安全整數,包含負數可能出現的最小數字;該範圍本身即符合資格
最大值任何安全整數,必須大於或等於最小值可能出現的最大數字;該範圍本身即符合資格
結果數量介於 1 到 1,000 之間的整數挑選器在單次點擊中會回傳多少個整數
允許重複開啟或關閉切換開啟:每次抽取獨立,可重複。關閉:清單中沒有任何整數會出現兩次
產生數字按鈕點擊執行 Web Crypto 抽樣、拒絕抽樣,以及(若需唯一值)稀疏部分 Fisher–Yates 洗牌
輸出區域以逗號分隔的整數,單行顯示選取並複製文字;編輯任何輸入會清除此清單

選擇唯一值或可重複的數字

重複切換是唯一會改變挑選器行為的決策。當每次抽取應獨立進行且相同數字可多次出現時,請保持開啟。當您需要不同的位置、識別碼或編號參與者時,請將其關閉。挑選器會在開始前檢查包含範圍的大小,因此當要求的唯一值數量超過範圍所能容納的數量時,會回報為不可能,而不是悄悄地予以截斷。

目標數量設定重複為何此組合有效
從 1 到 10 中抽取一個數字1任一從完整填滿的範圍中進行單次抽取;重複與否無關緊要
使用放回抽樣重複實驗任何開啟每次抽取皆獨立,因此先前的結果仍維持資格
從 30 位參與者中挑選 5 位優勝者且不重複5關閉沒有任何參與者會被抽中兩次;挑選器會回傳 5 個不同的整數
將小範圍中每個值的順序隨機排列等於範圍大小關閉稀疏部分洗牌會使每個整數剛好出現一次
從 1 到 5 中要求 10 個唯一值10關閉不可能 — 挑選器會回報錯誤,而不會重試

如何使用數字挑選器

  1. 在瀏覽器中開啟隨機數字產生器工具。該頁面在本地端執行,因此沒有任何範圍或結果會被傳送至伺服器。
  2. 在最小值欄位中輸入您希望允許的最小整數。可接受負值,且該範圍本身即有資格出現。
  3. 在最大值欄位中輸入您希望允許的最大整數。它必須大於或等於最小值,且包含範圍的大小本身也必須是安全整數。
  4. 在數量欄位中輸入您需要的結果數量,使用介於 1 到 1,000 之間的整數。
  5. 決定是否允許重複。若要進行獨立抽取,請保持切換開啟;若每個結果都必須不同,請將其關閉。
  6. 點擊「產生數字」。挑選器會從 Web Crypto 抽取 32 位元的字詞,將其組合成 53 位元的值,套用拒絕抽樣以捨棄任何未完成的模餘尾端,然後(開啟重複時)直接進行映射,或(關閉重複時)執行稀疏部分 Fisher–Yates 洗牌。
  7. 在輸出區域中讀取、選取或複製以逗號分隔的整數。之後若編輯任何輸入,清單將會被清除,因此舊的結果不會被誤認為是由新設定產生的輸出。

限制與邊緣情況一覽

挑選器會預先強制執行所有限制,而不是進行四捨五入、重試或回傳部分清單。當請求被拒絕或輸出看起來不如預期時,請將本節作為查詢使用。

情況挑選器的處理方式原因
任何輸入中出現小數、空白欄位、無限大或不安全整數以明確的錯誤拒絕瀏覽器的數字欄位無法精確表示這些值
最大值小於最小值拒絕反向的範圍無法產生有效的包含範圍
包含範圍的大小不是精確的安全整數拒絕防止大型範圍被意外四捨五入
數量超過 1,000拒絕每次操作上限為 1,000 個整數
唯一值數量大於範圍大小回報為不可能無法回傳比範圍所含更多的不同值
範圍僅包含一個值回傳該值兩個範圍相等,因此唯一符合資格的結果就是該範圍本身
跨越負數或零的範圍接受兩個範圍及範圍大小皆為有效的安全整數

常見情境與正確設定

常見的工作對應到一組少量的設定。挑選符合您要做的事情的那一列,填入範圍,然後點擊「產生」。

工作最小值最大值數量重複
從 1 到 10 之間抽取一個數字1101任一
擲一個六面骰161任一
從 0 到 100 產生 20 個隨機測試值010020開啟
從 30 個編號項目中挑選 5 位優勝者1305關閉
將 12 人隊列中的每個位置進行洗牌11212關閉
為模擬產生 1,000 個整數的樣本09,9991,000開啟

公平性、隱私,以及何時不應使用挑選器

隨機性來自瀏覽器的 Web Crypto 介面 — 請參閱 MDN 上的 Crypto.getRandomValues — 此介面提供密碼學上強度的輸入。拒絕抽樣會捨棄原始隨機字的未完成尾端,使得包含範圍內的每個整數都恰好對應相同數量的可接受原始值;簡單的餘數運算會使某些值的可能性略高於其他值,因此挑選器會避開這種做法。當重複功能關閉時,稀疏部分 Fisher–Yates 洗牌會選擇唯一的偏移位置,而不需為範圍內的每個整數建立陣列,使得記憶體使用量與您要求的數量成正比,而非與範圍大小成正比。

即使是公平的抽樣器,仍有兩個實際的限制值得注意。挑選器不會公開種子、已簽署的記錄、外部隨機性信標或可重現的稽核軌跡,因此訪客之後無法證明是哪個瀏覽器熵源產生了特定清單。對於受規範的抽獎、獎品、存取控制、密碼、權杖或其他具重大影響的決策,請遵循您組織所要求的經稽核程序。如需更廣泛地瞭解對於基於瀏覽器的挑選器而言,「在線上使用是否安全」意味著什麼,請參閱 隨機數字產生器在線上使用是否安全? 此外,挑選器也無法表示比 JavaScript 安全整數範圍更寬的整數文字;若您需要任意精度的值,請改用接受整數字串的專門系統,而不是使用一般的瀏覽器數字。

節省點擊次數的訣竅

幾個習慣可以讓挑選器在實際使用中更快速。在點擊「產生」之前,請務必先設定數量與重複切換,因為變更任何輸入都會清除先前的清單,且舊的結果可能會被誤認為是由新設定產生的輸出。如果您需要小範圍內的每個值剛好出現一次,請將數量設定為等於範圍大小,並關閉重複 — 挑選器會使用稀疏部分 Fisher–Yates 洗牌並回傳一個排列。如果您正在進行重複實驗,請保持重複功能開啟,並在您想要全新的獨立樣本時重新產生一份清單。輸出是單行的逗號分隔整數,您可以直接將其貼到試算表、腳本或聊天訊息中,無需額外清理。

相關閱讀:擲骰子速查表:記法、骰子與快速機率。