Я создаю генератор паролей. После нажатия кнопки должны появиться два пароля из 15 разных символов. Код включает массив Math.random и цикл for.
В примере 1 код содержит 15 уникальных символов (0M,OL#v4v9*C?.Z). В примере 2 код дал 15 одинаковых символов (ММММММММММММ).
Пример 1 дал мне 15 разных символов из массива (именно это я и хотел). ):
Код: Выделить всё
const characters = ["A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z", "0", "1", "2", "3", "4", "5", "6", "7", "8", "9","~","`","!","@","#","$","%","^","&","*","(",")","_","-","+","=","{","[","}","]",",","|",":",";","",".","?",
"/"];
let passwordLength = 0
let password1El = document.getElementById("password1-el")
let password2El = document.getElementById("password2-el")
let passwordsBtn = document.getElementById("passwords-btn")
passwordsBtn.addEventListener("click", function() {
passwordLength = 15
for (let i = 0; i < passwordLength; i++) {
password1El.textContent += characters[Math.floor(Math.random() * characters.length)];
password2El.textContent += characters[Math.floor(Math.random() * characters.length)]
}
})
Код: Выделить всё
const characters = ["A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z", "0", "1", "2", "3", "4", "5", "6", "7", "8", "9","~","`","!","@","#","$","%","^","&","*","(",")","_","-","+","=","{","[","}","]",",","|",":",";","",".","?",
"/"];
let passwordLength = 0
let password1El = document.getElementById("password1-el")
let password2El = document.getElementById("password2-el")
let passwordsBtn = document.getElementById("passwords-btn")
passwordsBtn.addEventListener("click", function() {
passwordLength = 15
let index1 = Math.floor(Math.random() * characters.length)
let index2 = Math.floor(Math.random() * characters.length)
for (let i = 0; i < passwordLength; i++) {
password1El.textContent += characters[index1];
password2El.textContent += characters[index2]
}
})
Спасибо!
Подробнее здесь: https://stackoverflow.com/questions/793 ... e-15-of-th