在JavaScript中生成隨機而唯一的字符串
在構建我的在線課程平台時,我遇到了生成數千個唯一URL的問題。
每個參與課程的人都會被分配一個唯一的URL。後端知道所有這些URL並將有效的URL映射到課程內容上。
我希望有一個唯一的URL,因為我可以將URL關聯到購買郵件。
這樣,我就可以避免使用登錄功能,同時讓每個人都有一個單獨的URL,以便在URL意外或故意被公開分享時,我可以阻止濫用。
於是我開始寫我的Node.js腳本。
我使用了randomstring這個包,並將數字添加到Set對象中,直到我得到想要的數量。使用Set意味著每個字符串都是唯一的,因為調用add
並傳遞重複的字符串不會產生任何效果。
我創建了一個名為generateStrings()
的函數來返回這個Set:
1 | const generateStrings = (numberOfStrings, stringLength) => { |
可以這樣調用它:
1 | const strings = generateStrings(100, 20) |
其中100是我想要的字符串數量,20是每個字符串的長度。
一旦我們獲得了這個Set,我們可以使用values()
Set方法來遍歷它們:
1 | for (const value of strings.values()) { |
tags: [“JavaScript”, “random string”, “unique strings”, “Set”]