Como gerar string aleatória em javascript

Como gerar string aleatória em javascript

Strings aleatórios são usados ​​para vários propósitos no desenvolvimento de software. Por exemplo, eles podem ser usados ​​para codificar IDs de usuário, gerar senhas e construir tokens em aplicativos. Se você está desenvolvendo um programa baseado em JavaScript que precisa de strings aleatórios - ou qualquer outro tipo de dados pseudo -aleatórios - então este artigo é para você! Veja bem, gerar caracteres aleatórios (ou cordas) é fácil com as ferramentas e técnicas certas. Felizmente, este artigo cobre exatamente isso. Vamos começar…

Por que precisamos de strings aleatórios?

Strings aleatórios são usados ​​para construir tokens, IDs de usuário e senhas no software. Digamos que você queira criar um sistema de login para um aplicativo da web. Você precisa atribuir a cada usuário um ID de login exclusivo para permitir que eles efetuem login. Você pode criar uma sequência aleatória de caracteres para agir como o ID do usuário. O mesmo se aplica aos tokens de usuário, que são usados ​​por vários sistemas. Strings aleatórios também são úteis para gerar vendas. O sal é uma corda aleatória usada para adicionar segurança adicional aos sistemas de login. Torna mais difícil para os hackers de força bruta ou efetuar login no seu sistema, pois eles precisam adivinhar um sal único para cada usuário.

Maneiras de gerar strings aleatórios em javascript

Esta seção discute quatro métodos que permitem gerar uma string aleatória em javascript.

  • Crie um método personalizado para gerar string aleatória.
  • Usando matemática.Método Random () para gerar string aleatória.
  • Usando criptografia.Método getRandomValues ​​() para gerar string aleatória.
  • Usando a biblioteca urng para gerar string aleatória - vamos discutir cada método em detalhes.

1. Crie um método personalizado para gerar string aleatória

Você pode criar um método personalizado para gerar uma string aleatória. Aqui definimos as palavras, números e caracteres especiais. Você pode chamar essa função JavaScript a qualquer momento para gerar uma string aleatória

função genrandonstring (comprimento) var chars = 'abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz0123456789!@#$%^&*() '; var charlength = chars.comprimento; var resultado = "; para (var i = 0; i < length; i++ ) result += chars.charAt(Math.floor(Math.random() * charLength)); return result; console.log(genRandonString(12));
1234567891011function genrandonstring (comprimento) var chars = '[email protegido]#$%^&*()'; var charlength = chars.comprimento; var resultado = "; para (var i = 0; i < length; i++ ) result += chars.charAt(Math.floor(Math.random() * charLength)); return result; console.log(genRandonString(12));

2. Usando matemática.Método Random () para gerar string aleatória

O Matemática.aleatório() Método retorna um número pseudo -aleatório entre 0 e 1. Este método usa a data e a hora atuais como fonte de entropia. Em JavaScript, as strings são representadas por uma sequência de caracteres entre duas citações duplas (""). Como as cordas são apenas uma sequência de caracteres, podemos usar a matemática.Método Random () para gerar uma string aleatória. Vejamos um exemplo básico em que construímos uma string aleatória usando a matemática.Método Random (). Vamos escrever um programa JavaScript que cria uma string usando a matemática.método aleatório.

var aleatomstring = ""; Randomstring += Matemática.aleatório(); Randomstring += Matemática.aleatório(); Randomstring += Matemática.aleatório(); console.log (RandomString);
123456var aleatomstring = ""; Randomstring += Matemática.aleatório(); Randomstring += Matemática.aleatório(); Randomstring += Matemática.aleatório(); console.log (RandomString);

Este programa cria uma string aleatória e a registra no console JavaScript. Você pode ver na captura de tela abaixo, a string é completamente aleatória.

Usando criptografia.Método getRandomValues ​​() para gerar string aleatória

O cripto.getRandomValues ​​() Método retorna uma sequência pseudorandom de bytes de um gerador de números aleatórios criptográficos. Este método faz parte da API JavaScript Crypto. Vamos dar uma olhada em um exemplo em que usamos a criptografia.Método getRandomValues ​​() para gerar uma string aleatória. Vamos escrever um programa JavaScript que cria uma string usando a criptografia.Método GetRandomValues.

var aleatomstring = ""; Randomstring += criptografia.getRandomValues ​​(16).tostring (16); console.log (RandomString);
12345var aleatomstring = ""; Randomstring += criptografia.getRandomValues ​​(16).tostring (16); console.log (RandomString);

Neste programa, criamos uma string aleatória usando a criptografia.Método getRandomValues ​​() passando 16 como o argumento. Fazer isso instrui o método a retornar 16 bytes aleatórios. Vejamos a saída deste programa na captura de tela abaixo.

Usando a biblioteca urng para gerar string aleatória

Existem algumas bibliotecas disponíveis para gerar dados aleatórios em JavaScript. Uma dessas bibliotecas é a biblioteca de geradores de números aleatórios (URNG) universal (URNG). A biblioteca pode ser instalada a partir do NPM ou do NPM se você estiver usando o JavaScript no back -end. Vamos dar uma olhada em um exemplo em que usamos a biblioteca urng para gerar uma string aleatória. Vamos escrever um programa JavaScript que cria uma string usando a biblioteca urng.

var aleatomstring = ""; Randomstring += urng.generaterandomstring (15); console.log (RandomString);
123var aleatomstring = ""; Randomstring += urng.generaterandomstring (15); console.log (RandomString);

Neste programa, criamos uma string aleatória usando a biblioteca urng passando 15 como o argumento. Fazer isso instrui a biblioteca a retornar 15 caracteres. Vejamos a saída deste programa na captura de tela abaixo.

Conclusão

Neste artigo, discutimos por que precisamos de strings aleatórios e quatro métodos diferentes para gerá -los em JavaScript. Vamos resumir as dicas discutidas neste artigo. Em primeiro lugar, lembre -se de que a aleatoriedade é um estado de incerteza. Em outras palavras, é a falta de qualquer padrão consistente. Então, qualquer coisa que não seja previsível é considerada aleatória. Em seguida, verifique se você não está usando matemática.aleatório () para gerar dados não aleatórios. Ele foi projetado para gerar uma sequência de números que são imprevisíveis. Portanto, não use para gerar números com um padrão específico. Por fim, lembre-se de implementar uma solução que gera strings aleatórios não repetitivos usando uma fonte de dados aleatória. Fazer isso garante que cada string seja única e imprevisível.