代码及注释:
function generatePassword(lower, upper, number, symbol, length) {
//TODO:待补充代码
let pwd = ''
const lowerWords = "qwertyuiopasdfghjklzxcvbnm"; //小写字母字符串
const upperWords = "QWERTYUIOPASDFGHJKLZXCVBNM";
const numbers = "0123456789";
const symbols = '!@#$%^&*(){}[]=<>/,.';
while(pwd.length < length) { //当密码小于要求的长度时,继续循环
if(lower && pwd.length < length) { //当密码小于要求的长度且需要小写字母
let index = Math.floor(Math.random() * lowerWords.length) //生成随机下标
pwd += lowerWords[index] //字符串拼接
}
if(upper && pwd.length < length) {
let index = Math.floor(Math.random() * upperWords.length)
pwd += upperWords[index]
}
if(number && pwd.length < length) {
let index = Math.floor(Math.random() * numbers.length)
pwd += numbers[index]
}
if(symbol && pwd.length < length) {
let index = Math.floor(Math.random() * symbols.length)
pwd += symbols[index]
}
}
return pwd
}
知识点:
1.随机整数生成:
min~max间的随机数:
Math.floor(Math.random() * (max - min + 1) + min)
2.字符串拼接:
str += str2