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)可以验证是否符合该正则表达式


1

0 学习 · 10204 问题

查看课程