prompt返回值的问题
来源:2-10 编程练习
慕粉1473412646
2018-05-18 15:19:13
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<script type="text/javascript">
var a;
var b=5;
alert("猜1-10的一个数字")
while(a!=b){
a=prompt("请输入你的答案","");
if (a>b) {
alert("猜大了")
}else if(a<b){
alert("猜小了")
}else if (a==b) {
alert("猜对了")
}
}
</script>
</body>
</html>老师我输入非数字的的时候,会一直提示我在输入。如何,避免用户输入非数字的呀?
1回答
好帮手慕阿莹
2018-05-18
这里需要用到正则表达式完成,在Java后边的课程中,会讲到正则表达式。以下代码同学可以参考以下
这里你可以加一个判断:
var a;
var b = 5;
alert("猜1-10的一个数字")
while (a != b) {
a = prompt("请输入你的答案", "");
var reg = /^\d+$/;
if (a.match(reg)) {
if (a > b) {
alert("猜大了")
} else if (a < b) {
alert("猜小了")
} else if (a == b) {
alert("猜对了")
}
} else {
alert('不是数字,请输入数字')
}
}
这里的var reg = /^\d+$/;是数字的正则表达式。a.match(reg)可以验证是否符合该正则表达式
相似问题