Genere cadenas únicas y aleatorias en JavaScript

Cómo creé una matriz de 5000 cadenas únicas en JavaScript

Mientras construía la plataforma para mi curso en línea, tuve el problema de generar algunos miles de URL únicas.

A cada persona que tome el curso se le asignará una URL única. El backend conoce todas esas URL y asigna una URL válida al contenido del curso.

Quería una URL única porque puedo asociar una URL a un correo electrónico de compra.

De esta manera, puedo evitar tener un inicio de sesión y, al mismo tiempo, tener una URL separada para cada persona me permite bloquear el abuso eventual si esa URL se comparte de manera involuntaria o intencional en el público.

Así que me dispuse a escribir mi script Node.js.

Usé elrandomstringpaquete, y agregué números a unEstablecer objetohasta que obtuve el número que quería. Usar un conjunto significa que cada cadena será única porque llamaraddy pasar una cadena duplicada no hará nada silenciosamente.

Hice unagenerateStrings()función que devuelve el conjunto:

const generateStrings = (numberOfStrings, stringLength) => {
  const randomstring = require('randomstring')
  const s = new Set()

while (s.size < numberOfStrings) { s.add(randomstring.generate(stringLength)) }

return s }

Puedo llamarlo usando

const strings = generateStrings(100, 20)

donde 100 es el número de cadenas que quiero y 20 es la longitud de cada cadena.

Una vez que obtenemos el conjunto, podemos iterar sobre ellos usando elvalues()Método de configuración:

for (const value of strings.values()) {
  console.log(value)
}

Más tutoriales de js: