你好,我对Javascript有点新,我试图创建一个简单的密码生成器。不幸的是它不起作用。它似乎停止在我的switch语句周围工作。我只是好奇我可能做错了什么,我觉得我将整数转换成字符串的方式可能有问题。
function generate(){
var lower=document.getElementById('c1').checked;
var upper=document.getElementById('c2').checked;
var number=document.getElementById('c3').checked;
var extend=document.getElementById('c4').checked;
var special=document.getElementById('c5').checked;
var space=document.getElementById('c6').checked;
var chars=new Array();
var types=0;
chars[0]=0;
chars[1]=1;
chars[2]=2;
chars[3]=3;
chars[4]=4;
chars[5]=5;
var password="";
for(i=0;i<16;i++){
var rnd=chars[randomFromInterval(0,5)];
switch(rnd)
{//This Part Isn't Working
case 0:password+=((char)(randomFromInterval(97,122)));break;
case 1:password+=randomFromInterval(65,90).toString();break;
case 2:password+=((char)(randomFromInterval(60,71)));break;
case 3:password+=((char)(randomFromInterval(48,57)));break;
case 4:password+=((char)(randomFromInterval(33,47)));break;
case 5:password+=(char)(32);break;
}
}
document.getElementById("password").value =password;
function randomFromInterval(from,to)
{
return Math.floor(Math.random()*(to-from+1)+from);
}
答案 0 :(得分:1)
JavaScript没有强制转换运算符。它也没有char
类型。
您撰写的(char)x
内容在JavaScript中写为String.fromCharCode(x)
。