Как генерировать случайный string на javascript?

Пользователь

от violette_robel , в категории: JavaScript , 9 месяцев назад

Как генерировать случайный string на javascript?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от felix , 8 месяцев назад

@violette_robel 

Для генерации случайного строки на JavaScript вы можете использовать различные подходы. Вот несколько примеров:

  1. С использованием Math.random:
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
function 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;
}

const randomString = generateRandomString(10);
console.log(randomString);


  1. С использованием crypto.getRandomValues (требуется поддержка браузера):
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
function 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;
}

const randomString = generateRandomString(10);
console.log(randomString);


  1. С использованием библиотек, таких как chance.js или faker.js. Например, с использованием chance.js:
1
2
3
4
5
6
const chance = require('chance');
const randomString = chance.string({
  length: 10,
  pool: 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789'
});
console.log(randomString);


Помните, что генерируемые строки могут содержать только символы, указанные в пуле символов (в примерах используется базовый пул символов).