Como Generar Un ID Único (Unique Key) con JavaScript

En esta página:
Demo Github
Cuando manejamos datos con JavaScript y no solo en este lenguaje, sino también en otros lenguajes de programación en donde gestionamos datos, a veces necesitamos asignarles un identificador, por diferentes motivos, uno de los motivos más comunes, es evitar la duplicidad de los datos, ya que puede generar confictos o reemplazarse entre sí. En este Post te enseñare a Como Generar Un ID Único (Unique Key) con JavaScript, vamos con ello.
Antes de continuar te invito a leer los siguientes artículos:
- Función Pura VS Función Impura en JavaScript
- Como Detectar Si El Usuario Cambia de Pestaña En El Navegador Con JavaScript
- Como Crear Un PDF con window.print() de JavaScript
- Mostrar un Mensaje en Una Determinada Fecha con Javascript (Con Imagen)
- 5 Expresiones Regulares Que Deberías Conocer en JavaScript
- Como crear el Efecto modo Oscuro – Claro en un Sitio Web (Mantener el modo seleccionado en las demás Páginas)
- Como Verificar si 2 Contraseñas Coinciden o son Iguales con JavaScript
- 5 Cosas que Talvez no Sabías sobre try-catch-finally en JavaScript
- Cual es la Diferencia entre == vs === en JavaScript
- Generar una URL Amigable (Slug) usando un determinado Texto con JavaScript
- Puedes leer más en la categoría JavaScript
Antes de continuar, te invito a escuchar el Podcast: “5 Consejos para ser un Programador más Productivo” (No son los clásicos consejos técnicos de programación, si no de rutinas y buenos hábitos cotidianos) y “¿ Porqué Es Importante Saber Programar en la Ciberseguridad ?” (Anchor Podcast):
Spotify: | Sound Cloud: | Apple Podcasts | Anchor Podcasts |
![]() |
![]() |
![]() |
![]() |
Bien ahora continuemos con el Post: Como Generar Un ID Único (Unique Key) con JavaScript.
En JavaScript existen diferentes maneras de crear un ID único (unique key), te voy a compartir 2 soluciones a continuación. Haré uso de funciones arrow de JavaScript. Una función arrow es una manera más rápida y práctica de crear funciones en JavaScript. Si quieres aprender más sobre función arrow o flecha, te recomiendo ver este video del Curso Gratuito de JavaScript desde 0:
Ahora pasemos a lo que venimos.
Solución 1
Usaremos la función Math.ramdom() y le pasamos el método toString() y substring():
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
generarIdUnico1 = () => { return Math.random().toString(30).substring(2); } // Llamamos a la función 'generarIdUnico1()' generarIdUnico1(); // Obtenemos '7n805l8n5f2' // Obtenemos 'nnh1gb98a19' // Obtenemos 'l148n037ak19' |
En el código anterior, puedes ver que cuando llamamos a la función generarIdUnico() se nos genera un identificador único. Cada ves que llamamos a la función generarIdUnico() se nos generará un id único.
Si buscas un identicador más largo y personalizado, te recomiendo seguir la solución 2.
Solución 2
Si deseas crear ids más grandes o largos, esta solución te ayudará. Asimismo la puedes personalizar con guiones o sin guiones. Hago uso de varias letras n para definir el largo del identificador, mientras más letras n agregres, más grande será el identificador.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
generarIdUnico2 = () => { return 'nnnnnnnnnnnnnnnnnnnnnnnnnnnnn-nnnn-7nnn-tnnn-nnnnnnnnnnnn'.replace(/[nt]/g, function(c) { var r = Math.random() * 16 | 0, v = c == 'n' ? r : (r & 0x3 | 0x8); return v.toString(16); }); } // Llamamos a la función 'generarIdUnico2()' generarIdUnico2(); // Obtenemos '8e6fd0abda72f77c628a16aaa3757-1bad-7ed1-ac8f-a2e2304dc9e6' // Obtenemos 'de874467a3af8ff4e60b1e642e8ce-0da1-7b23-bea1-863eb3d602b5' // Obtenemos '2cf68cd4fed2dade46604c5f3ffdc-af30-71a3-bb48-b7fc61fcdeef' |
En el código anterior, cada ves que llamamos a la función generarIdUnico() se nos genera un identificador único. Hago uso de la función Math.ramdom(), el método .replace() y toString().
Conclusión
En este Post, hemos aprendido a crear strings o identificadores únicos con el lenguaje de programación JavaScript. La mejor manera de dominar estas formas, es usándolas en tus proyectos.
Nota (s)
- No olvides que debemos usar la Tecnología para hacer cosas Buenas por el Mundo.
Síguenos en nuestras Redes Sociales para que no te pierdas nuestros próximos contenidos.
Social
Redes Sociales (Developers)
Redes Sociales (Digital)