用 JS 实现网页猜数字游戏:1 - 100 随机数等你挑战!
以下是一个使用JavaScript在网页中实现“数字”猜数字游戏的代码示例。这个示例使用了弹窗来进行用户交互,并根据用户的输入给出相应的提示。 ```html <!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>数字游戏</title> <script> function startGame() { // 生成1到100之间的随机整数 var targetNumber = Math.floor(Math.random() * 100) + 1; var userGuess; while (true) { // 弹窗提示用户输入猜测的数字 userGuess = prompt("请输入1到100之间的数字:"); // 将用户输入转换为整数 userGuess = parseInt(userGuess, 10); // 检查输入是否为有效数字 if (isNaN(userGuess) || userGuess < 1 || userGuess > 100) { alert("输入无效,请输入1到100之间的整数。"); continue; } // 判断用户输入与目标数字的大小关系 if (userGuess > targetNumber) { alert("猜大了!"); } else if (userGuess < targetNumber) { alert("猜小了!"); } else { alert("猜对了!"); break; } } } // 在页面加载完成后启动游戏 window.onload = startGame; </script> </head> <body> <h1>欢迎来到数字游戏!</h1> </body> </html> ``` 代码说明: 1. 生成随机数:使用`Math.random()`生成一个0到1之间的浮点数,然后乘以100并取整,最后加1,得到一个1到100之间的随机整数。 2. 用户输入:使用`prompt()`函数获取用户的输入,并将其转换为整数。 3. 输入验证:检查用户输入是否为有效数字且在1到100之间,如果不是则提示用户重新输入。 4. 判断逻辑:使用`if-else if-else`语句判断用户输入的数字与目标数字的大小关系,并给出相应的提示。 5. 循环继续游戏:使用`while (true)`循环,直到用户猜中数字为止。 额外需要注意的逻辑点: 1. 用户体验:可以考虑增加一些提示,比如最多允许用户猜测的次数,以避免无限循环。 2. 输入方式:可以改用HTML表单和按钮来替代`prompt()`,以提升用户体验和交互性。 3. 代码封装:可以将游戏逻辑封装成一个函数,以便在需要时重新启动游戏,或者在不同的页面上复用。 ######[AI写代码神器 | 653点数解答 | 2025-03-26 14:39:33]
- 超燃年会来袭!诗舞歌戏轮番上阵,共赴欢乐盛宴! (字节豆包 | 206点数解答 | 2025-01-08 10:59:43)343
- 补全代码:将数组所有元素赋值为 100 并输出(字节豆包 | 164点数解答 | 2025-11-01 19:14:57)100
- C++实现图像模糊化处理:含代码、解释与复杂度分析(字节豆包 | 670点数解答 | 2025-11-10 18:55:33)110
- C++实现图像像素灰度值模糊化处理:输入输出全解析(字节豆包 | 655点数解答 | 2025-12-01 14:24:01)88
- Python 实现图像模糊化:输入像素值,输出处理后图像(附代码及详细解释)(字节豆包 | 555点数解答 | 2025-12-09 12:22:26)88
- C++ 实现:精准统计给定范围 [L, R] 内数字 2 出现的次数及代码详解(字节豆包 | 401点数解答 | 2026-02-05 21:17:05)40
- C++实现:统计[L, R]范围内数字2出现的次数及代码详解(字节豆包 | 489点数解答 | 2026-02-07 17:12:26)43
- HTML+jQuery 实现列表元素悬停动画效果:代码详解与注意事项(字节豆包 | 475点数解答 | 2024-12-19 14:58:05)368
- HTML+jQuery:打造动态导航栏动画效果及注意事项(字节豆包 | 495点数解答 | 2024-12-19 14:58:06)316
- HTML+jQuery:打造带动态交互效果的商品展示页面(讯飞星火 | 497点数解答 | 2024-12-19 14:58:18)322
- HTML与jQuery结合:实现商品列表交互动画的首页代码解析(讯飞星火 | 497点数解答 | 2024-12-19 14:58:20)339
- Python 实现球类:精准计算半径、表面积与体积,附输入验证与异常处理!(阿里通义 | 261点数解答 | 2024-11-28 21:19:39)343