一百零二 我是一个初学者,grasshopper岁学习JS.
100 我有了创建一个随机密码生成器的 idea . 我成功地做到了这一点.我现在已经创建了一个函数,以便您可以 Select 指定您希望在密码中包含的字母、数字和特殊字符的数量.
100 现在我想要显示密码中有多少个密码.我怎么才能做到这一点呢?
100 我有4个数组,包括数字(1-9)、大写字母(A-Z)、小写字母(a-z)和特殊字符(!、@、#、$、%、^、&;、*、<;、>;、?).
100 多个函数创建了STING:随机密码.他们有一个可以倒计时的var,但当用户输入的细节少于密码的总长度时,它就不起作用了.(很难解释,请查看代码.)
如何计算该字符串中有多少个数字、大写、小写和特殊字符?
100 到目前为止,我的代码如下:
// const: all specific options + all
const numbers = [
'0',
'1',
'2',
'3',
'4',
'5',
'6',
'7',
'8',
'9'
];
const undercase = [
'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 uppercase = [
'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 special = [
'!',
'@',
'#',
'$',
'%',
'^',
'&',
'*',
'<',
'>',
'?'
];
const all = numbers.concat(undercase, uppercase, special);
// needed var's
var password;
var randomPasswordString;
var amountNumbersInPassword = 0;
var amountUndercaseInPassword = 0;
var amountUppercaseInPassword = 0;
var amountSpecialInPassword = 0;
// input: length password & specifics?
var lengthPassword = '10';
var specific = true;
// if specifics: how much + functions
var amountNumbers = 2;
function randomNumbers (){
for (var a = 0; a < amountNumbers; a = a + 1){
var random = pickRandom(numbers);
password = password + random;
amountNumbersInPassword = amountNumbersInPassword + 1;
}
}
var amountUndercase = 2;
function randomUndercase (){
for (var b = 0; b < amountUndercase; b = b + 1){
var random = pickRandom(undercase);
password = password + random;
amountUndercaseInPassword = amountUndercaseInPassword + 1;
}
}
var amountUppercase = 2;
function randomUppercase (){
for (var c = 0; c < amountUppercase; c = c + 1){
var random = pickRandom(uppercase);
password = password + random;
amountUppercaseInPassword = amountUppercaseInPassword + 1;
}
}
var amountSpecial = 2;
function randomSpecial (){
for (var d = 0; d < amountSpecial; d = d + 1){
var random = pickRandom(special);
randomPasswordString = randomPasswordString + random;
password = password + randomPasswordString.slice(9);
amountSpecialInPassword = amountSpecialInPassword + 1;
pickRandom
}
}
var amount = (amountNumbers + amountUndercase + amountUppercase + amountSpecial + 1);
function specificPassword (){
for (amount; amount < lengthPassword; amount = amount + 1) {
var random = pickRandom(all);
var randomPasswordString = randomPasswordString + random;
password = password + randomPasswordString.slice(9);
}
}
// generator
// without specifics
if (specific === false) {
for (var e = 0; e < lengthPassword; e = e + 1) {
var random = pickRandom(all);
var password = password + random;
}
}
// with specifics
else {
randomNumbers();
randomUndercase();
randomUppercase();
randomSpecial();
specificPassword();
}
// output
console.log('This is your password with ' + (-9 + password.length) + ' characters.');
console.log(password.slice(9));
console.log('');
console.log('This password has:');
console.log(amountNumbersInPassword + ' numbers');
console.log(amountUndercaseInPassword + ' letters in undercase');
console.log(amountUppercaseInPassword + ' letters in uppercase');
console.log(amountSpecialInPassword + ' special characters');
非常感谢!
阿德里安五世
请注意,我是初学者,英语不是我的母语.我很抱歉我的拼写错误和我的简单代码.请留下更好的标签等建议.