刚学JS,自己写了一个简单的代码:<script type="text/javascript">var x =prompt("只能输入字符串")
if (typeof x== "string")
{
document.write(x);
}
else
{
alert("非法数据!");
}

</script>
但运行后,不管输入的是数字或字符串,都只执行到document.write(x)这步,else后的无效,不能判断数据类型。
想了一天,还是没头绪…………
那位大虾知道的,透露啊!!

解决方案 »

  1.   

    没有什么好想的,prompt这个方法返回的就是字符串
      

  2.   


    if(/^\d+$/.test(x)){
    //数字
    }else{
    //非数字
    }
      

  3.   

    你输入进去到文本框里的,本来就作为文本处理的,你要是想判断是字母还是数字,建议你还是用ASCII码判断吧。另外,你要求的字符串定义是什么?是全字母,还是字母数字组合,没有定义,正则表达式也没有办法定义啊
      

  4.   

    语言级默认的字符串就是单引号或双引号里面的内容。。不论是数字,字母,符号,还是空格。。另外prompt返回的本来就是字符串。。
      

  5.   

    返回的x本来就是string,如果你要判断是由字母或者是数字或者是符号的话就要用正则了