Вот несколько способов создания уникальной случайной строки в JavaScript:
Метод 1: использование Math.random() и преобразование в base36
const generateRandomString = () => {
return Math.random().toString(36).substring(2);
};
Метод 2: использование Date.now() и преобразование в base36
const generateRandomString = () => {
return Date.now().toString(36);
};
Метод 3: использование комбинации Math.random() и Math.floor()
const generateRandomString = (length) => {
let result = '';
const characters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
const charactersLength = characters.length;
for (let i = 0; i < length; i++) {
result += characters.charAt(Math.floor(Math.random() * charactersLength));
}
return result;
};
Метод 4. Использование метода crypto.getRandomValues() для безопасной генерации случайных чисел
const generateRandomString = (length) => {
const characters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
const charactersLength = characters.length;
const randomValues = new Uint32Array(length);
crypto.getRandomValues(randomValues);
let result = '';
for (let i = 0; i < length; i++) {
result += characters.charAt(randomValues[i] % charactersLength);
}
return result;
};
Обратите внимание, что четвертый метод с использованием crypto.getRandomValues()обеспечивает более безопасную генерацию случайных чисел, подходящую для конфиденциальных приложений, в то время как другие методы подходят для общего использования.