在 JavaScript 中,我正在制作一个随机密码生成器,用户可以在其中选择大小(8 到 128 个字符)和四个参数(如果他们想包括:数字、大写和/或小写字母以及特殊字符)。我制作了一个大的空数组,然后将对参数的真实响应推入其中,然后计算机使用大数组从选项中创建一个随机密码。
// for loop
// sizeOfPassword = sizeOfPassword;
for (i = 0; i < sizeOfPassword; i++) {
var index = Math.floor.parseInt(Math.random() * allOptions.length);
var computerChoice = allOptions[index];
passwordElement.text = passwordString
var passwordString = password.join("");
var passwordElement = document.querySelector("password")
randomPassword += computerChoice;
var password = []
// var = 0
for (; i < sizeOfPassword - 1; i++) {
password.push(randomCharacter)
console.log(passwordString);
console.log(passwordElement.text);
passwordElement.text = passwordString
}
}
// Assignment Code
var generateBtn = document.querySelector("#generate");
// Write password to the #password input
function writePassword() {
var password = getPasswordInfo();
var passwordText = document.querySelector("#password");
passwordText.value = password;
}
// Add event listener to generate button
generateBtn.addEventListener("click", writePassword);
下面是我的代码的后半部分,但每次我在浏览器中测试它时,计算机生成的密码都会返回为未定义。如何以及在我的代码中的何处正确分配我的计算机生成的字符串的值?