gpt4 book ai didi

javascript - 随 secret 码生成器 JavaScript

转载 作者:行者123 更新时间:2023-11-30 23:56:24 24 4
gpt4 key购买 nike

我使用窗口提示和 window.confirm 来询问用户是否要在密码中使用某些字符。 (我知道我可以用一些 HTML 来做复选框,但这必须是 JS)。如何将确认答案传递给函数然后使用 Math.floor(Math.random() * length)

const key_strings = {
lowercase: 'abcdefghijklmnopqrstuvwxyz',
uppercase: 'ABCDEFGHIJKLMNOPQRSTUVWXYZ',
number: '0123456789',
symbol: " !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~",
};

function generatePassword() {
passwordCharSet = "";

var length = window.prompt("Enter a number from 8 to 128 for password length.");

var lowercase = window.confirm("Would you like to use lowercase letters?");
if (lowercase == true) {
passwordCharSet += lowercase;
};

var uppercase = window.confirm("Would you like to use uppercase letters?");
if (uppercase == true) {
passwordCharSet += uppercase;
};

var symbols = window.confirm("Would you like to use symbols?");
if (symbols == true) {
passwordCharSet += symbols;
};

var numbers = window.confirm("Would you like to use numbers?");
if (numbers == true) {
passwordCharSet += numbers;
};

for (let i = 0; i < length; i++) {
_______________ Math.floor(Math.random() * length)
}
}

我也不知道 math.floor 还可以放什么。

最佳答案

您需要将 key_string 的属性连接到 passwordCharSet,而不是对提示的响应。

获取随机字符时,需要索引passwordCharSet并使用passwordCharSet.length

key_strings.symbol中,您需要转义"\

const key_strings = {
lowercase: 'abcdefghijklmnopqrstuvwxyz',
uppercase: 'ABCDEFGHIJKLMNOPQRSTUVWXYZ',
number: '0123456789',
symbol: "!\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~",
};

function generatePassword() {
var passwordCharSet = "";

var length = window.prompt("Enter a number from 8 to 128 for password length.");

var lowercase = window.confirm("Would you like to use lowercase letters?");
if (lowercase) {
passwordCharSet += key_strings.lowercase;
};

var uppercase = window.confirm("Would you like to use uppercase letters?");
if (uppercase) {
passwordCharSet += key_strings.uppercase;
};

var symbols = window.confirm("Would you like to use symbols?");
if (symbols) {
passwordCharSet += key_strings.symbol;
};

var numbers = window.confirm("Would you like to use numbers?");
if (numbers) {
passwordCharSet += key_strings.number;
};
var password = "";
for (let i = 0; i < length; i++) {
password += passwordCharSet[Math.floor(Math.random() * passwordCharSet.length)]
}
return password;
}

console.log(generatePassword());

关于javascript - 随 secret 码生成器 JavaScript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61021441/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com