const lowerLetterArr = [
'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',
]
const upperLetterArr = [
'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',
]
const numberArr = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
const specialArr = [
'~',
'!',
'@',
'#',
'$',
'%',
'^',
'&',
'*',
'(',
')',
'-',
'_',
'+',
'=',
'?',
'/',
';',
'<',
'>',
'{',
'}',
'|',
'\\',
'[',
']',
'.',
]
/**
* 生成密码字符串
* @param lowerLetterNum 小写字母个数
* @param upperLetterNum 大写字母个数
* @param numberNum 数字个数
* @param specialNum 特殊字符个数
*/
function getPassWord(lowerLetterNum, upperLetterNum, numberNum, specialNum) {
let password = '' //生成的密码
// 数组长度
let lowerLetterArrLeng = lowerLetterArr.length
let numberArrLeng = numberArr.length
let specialArrLeng = specialArr.length
let upperLetterArrLeng = upperLetterArr.length
function randomNum(length) {
// 随机生成不超过数组长度的整数
return Math.floor(Math.random() * length)
}
for (let i = lowerLetterNum; i > 0; i--) {
// 小写
let x = randomNum(lowerLetterArrLeng)
password += lowerLetterArr[x]
}
for (let j = upperLetterNum; j > 0; j--) {
// 大写
let y = randomNum(upperLetterArrLeng)
password += upperLetterArr[y]
}
for (let m = numberNum; m > 0; m--) {
// 数字
let z = randomNum(numberArrLeng)
password += numberArr[z]
}
for (let n = specialNum; n > 0; n--) {
// 特殊字符
let s = randomNum(specialArrLeng)
password += specialArr[s]
}
// 返回生成的密码
return password
}
生成含有大小写字母、数字、特殊字符的密码字符串.js
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...