Entonces, la asignación genera una contraseña aleatoria de entre 7 y 10 caracteres. ¿Es esta sintaxis válida en mi bucle for que genera la cantidad de números?
var password = ""; var characters = "ABCDEFGHIJKLMNOPQRSTUVWXYZ" + "abcdefghijklmnopqrstuvwxyz0123456789@#$"; for (i = 1; i <= 10; i++) { var char = Math.floor(Math.random() * characters.length + 1); password += characters.charAt(char); } console.log(password);Entonces, este bucle for actual hace que la contraseña tenga diez caracteres. Quiero que tenga entre 7 y 10 caracteres. ¿Es válida la sintaxis de Javascript para hacer i<=10 && i>=7?
Lo que puedes hacer es seleccionar un número aleatorio del 0 al 3. En función de ese número, decidirás cuánto dura tu contraseña. Podría ser 7+0 o 7+1 o 7+2 o 7+3 .
Ahora, la cantidad de veces que se ejecuta el bucle es dinámica y, por lo tanto, obtendrá contraseñas de diferentes longitudes.
var password = ""; var characters = "ABCDEFGHIJKLMNOPQRSTUVWXYZ" + "abcdefghijklmnopqrstuvwxyz0123456789@#$"; let x = Math.floor(Math.random()*4); for (i = 1; i <= (7+x); i++) { var char = Math.floor(Math.random() * characters.length + 1); password += characters.charAt(char); } console.log(password);