一个猜数字的小游戏,用JavaScript实现

一个猜数字的小游戏,用JavaScript实现

一个猜数字的小游戏,系统产生一个随机数,范围由游戏难度决定,玩家输入数字进行猜测, 猜对后得到游戏花费时间.,三种游戏难度,初级(1-100),中级(1-1000),高级(1-10000)

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title>一个猜数字小游戏</title>
		<script type="text/javascript">
			var random=0; //随机数
			var start=0; //开始时间
			var end=0;  //结束时间
			function startTime(){
				start=new Date();
			}
			function endTime(){
				end=new Date();
			}
			//三种游戏模式,结束后在框体中输出所选游戏模式和成功完成游戏所花时间
			function primary(){
				random=parseInt(Math.random()*99+1);
				var timeprimary=startgame();
				document.getElementById("his").innerHTML="初级:"+timeprimary+"秒";
			}
			function middle(){
				random=parseInt(Math.random()*999+1);
				var timemiddle=startgame();
				document.getElementById("his").innerHTML="中级:"+timemiddle+"秒";
			}
			function high(){
				random=parseInt(Math.random()*9999+1);
				var timehigh=startgame();
				document.getElementById("his").innerHTML="高级:"+timehigh+"秒";
			}
			
			//如果没有输入按了确定或者取消,prompt仍然返回值 为空或空字符串,还有输入的值不是数字的时候,返回字符串"NULL"
			function shuru(){
				var temp=prompt("你猜");
				if(temp==""||temp==null){
					alert("不能输入为空");
					return "NULL";
				}else{
					if(isNaN(temp)){
						return "NULL";
					}else{
						return parseInt(temp);
					}
				}
			}
			
			//当识别到输入出错(返回值为字符串"NULL")时,提示错误,返回Error,否则进行判断
			function jiaoyan(){
				var que=shuru();
				if(que!="NULL"){
					if(que==random){
						alert("恭喜你回答正确");
						return true;   
					}else if(que>random){
						alert("输入大了");
						return false;
					}else{
						alert("输入小了");
						return false;
					}
				}else{
					alert("请重新开始游戏");
					return Error; 
				}
			}
			
			//当校验返回的值为Error时返回一个无穷大时间同时结束了函数继续运行,当校验返回的值为false时说明输入错误,继续弹框输入,为true时,输入正确,结束循环,并计算用时
			function startgame(){
				startTime();
				var a=false;
				while(!a){
					a=jiaoyan();
					if(a==Error){
						return 9999;
					}
				}
				endTime();
				var time=(end-start)/1000;
				alert("用时"+time+"秒");
				return time;
			}
		</script>
		
		<style type="text/css">
			#his{
				font-size: 20;
				width: 150px;
				height: 25px;
				border: 1px solid black;
			}
		</style>
	</head>
	<body>
		<div>
			一个猜数字小游戏
			<br />
			选择难度,初级(1-100),中级(1-1000),高级(1-10000)
			<br />
			<input type="button" value="初级" onclick="primary()"/>
			<input type="button" value="中级" onclick="middle()"/>
			<input type="button" value="高级" onclick="high()"/>
			<div id="his">
				
			</div>
		</div>
	</body>
</html>

  • 3
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值