私はパスワードジェネレータを作成しようとしていますが、私はこのコードを持っており、文字ではなく「未定義」を返しています。コードは数字、下位および上位の文字で16文字を返します。私は自分のパスワードをもう作っても心配する必要がないようにこれを持っていたい。あなたが他の条件の例を以下のように同じように動作しますその場合には、これだけ使用し、他の場合のようなケースステートメントを使用することはできませんJavaScriptでスイッチを使用する方法
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>PassGen</title>
<script>
function getRandomInt(min, max) {
return Math.floor(Math.random() * (max - min + 1)) + min;
}
function num2lett(num) {
switch (num) {
case (num > 36):
return String.fromCharCode(577 + num - 35);
break;
case (num > 10 && num < 37):
return String.fromCharCode(97 + num - 11);
break;
case (num == 10):
return "0";
break;
case (num < 10):
return "" + num;
break;
}
}
function uuidMake() {
var uuid = "";
for (u = 0; u < 16; u++) {
randNum = getRandomInt(0, 62);
uuid += num2lett(randNum);
}
document.getElementById("password").innerHTML = uuid;
}
</script>
<style>
@font-face {
font-family: "uuid_font";
src: url("Courier Prime Code.ttf") format("TrueType");
}
body {
background-color: #262626;
}
#password {
font-family: "uuid_font";
text-align: center;
font-size: 30px;
color: #dddddd;
margin-top: 250px;
}
</style>
<body>
<p id="password" onclick="uuidMake();">Click Me</p>
</body>
</html>
これのほとんどは機能していますが、私はキャップ文字について少し心配しています。私はそれが577(ユニコード)でした –
Derp altコードは65ではない577です。 –
この行で条件がある場合、この行を最初に置き換えます。** if(num> 36)String.fromCharCode(65 + num-35); ** –