我的代码有问题吗?(简单JavaScript查找特殊字符)

我的代码有问题吗?(简单JavaScript查找特殊字符),javascript,Javascript,当用户输入特殊字符时,我想得到两个MSGm@rk @l@n 在charCodeAt()的帮助下 如果我输入普通文本或者输入spec char,我的代码会给出一个重复的答案,这两个条件都为true var username = prompt("Enter Username"); var boolean = true; for(var i=0;i<username.length;i++){ if(username[i].charCodeAt()==33 || username[i].c

当用户输入特殊字符时,我想得到两个MSGm@rk @l@n 在charCodeAt()的帮助下

如果我输入普通文本或者输入spec char,我的代码会给出一个重复的答案,这两个条件都为true

var username = prompt("Enter Username");
var boolean = true;

for(var i=0;i<username.length;i++){

  if(username[i].charCodeAt()==33 || username[i].charCodeAt()==44 || username[i].charCodeAt()==46 || username[i].charCodeAt()==64){
        document.write("Wrong input: "+username);
        boolean=true;
        break;
  }
  else{
       document.write("correct input "+username);
  }
}
var username=提示(“输入用户名”);
var布尔值=真;

对于(var i=0;iMove
document.write
在循环之外:

var username=提示(“输入用户名”);
var valid=true;

对于(var i=0;i的可能重复项i将避免使用
布尔值
作为变量名,因为它是旧ECMAScript规范中的未来保留关键字:无法正常工作..当我输入特殊字符时,它将显示一条消息“Correct input”…但是这个输入容器spec char:|@NoobDev哪个特殊字符?我尝试了
@
(在您的示例中就是这样),它正在工作。