¿Cómo generar una contraseña aleatoria usando JavaScript?

La tarea es generar una contraseña aleatoria que puede consistir en letras, números y caracteres especiales. Esto se puede lograr de varias maneras, en este artículo discutiremos los dos métodos más populares que se analizan a continuación para resolver el problema.

Enfoque 1: haga que una string consista en alfabetos (minúsculas y mayúsculas), números y caracteres especiales. Usaremos los métodos Math.random() y Math.floor() para generar un número entre 0 y l-1 (donde l es la longitud de la string). Para obtener el carácter de la string de un índice en particular, podemos usar el método .charAt() . Esto seguirá concatenando el carácter aleatorio de la string hasta que se obtenga la contraseña de la longitud deseada.

  • Ejemplo: Este ejemplo implementa el enfoque anterior.

    <!DOCTYPE HTML>
    <html>
      
    <head>
        <title>
            Generate a Random Password
            using JavaScript
        </title>
    </head>
      
    <body style="text-align:center;">
          
        <h1 style="color: green"
            GeeksforGeeks 
        </h1>
          
        <h3>
            Click on the button to
            generate random password.
        </h3>
          
        <button onclick="gfg_Run()">
            Click Here
        </button>
        <br>
          
        <div>
            <p id="geeks"></p>
        </div>
          
        <script>
            var el_down = document.getElementById("geeks");
      
            /* Function to generate combination of password */
            function generateP() {
                var pass = '';
                var str = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' + 
                        'abcdefghijklmnopqrstuvwxyz0123456789@#$';
                  
                for (let i = 1; i <= 8; i++) {
                    var char = Math.floor(Math.random()
                                * str.length + 1);
                      
                    pass += str.charAt(char)
                }
                  
                return pass;
            }
      
            function gfg_Run() {
                el_down.innerHTML = generateP();
            }
        </script>
    </body>
      
    </html>
  • Producción:

Enfoque 2: en este enfoque, usaremos el método Math.random() para generar un número entre 0 y 1 y luego convertirlo a base36 (que consistirá en 0-9 y az en letras minúsculas) usando el método .toString(). Para eliminar el cero inicial y el punto decimal, se usará el método .slice() y Math.random().toString(36).slice(2) para generar la contraseña. Para letras mayúsculas, use el mismo método con el método .uppercase() en concatenación con el método anterior.

  • Ejemplo: Este ejemplo implementa el enfoque anterior.

    <!DOCTYPE HTML> 
    <html
      
    <head
        <title
            Generate a Random Password
            using JavaScript
        </title>
    </head
      
    <body style = "text-align:center;"
          
        <h1 style = "color: green"
            GeeksforGeeks 
        </h1>
          
        <h3>
            Click on the button to
            generate random password.
        </h3>
          
        <button onclick = "gfg_Run()"
            Click Here
        </button>
          
        <p id = "geeks"></p>
          
        <script>
            var el_down = document.getElementById("geeks");
              
            function gfg_Run() {
                el_down.innerHTML = 
                    Math.random().toString(36).slice(2) + 
                    Math.random().toString(36)
                        .toUpperCase().slice(2);
                
        </script
    </body
      
    </html>      
  • Producción:

Publicación traducida automáticamente

Artículo escrito por PranchalKatiyar y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *