当前位置:首页 > JavaScript

小游戏js实现

2026-02-03 01:11:52JavaScript

使用JavaScript实现小游戏

创建一个小游戏需要HTML、CSS和JavaScript的结合。以下是一个简单的猜数字游戏的实现方法。

HTML结构

<!DOCTYPE html>
<html>
<head>
    <title>猜数字游戏</title>
    <style>
        body {
            font-family: Arial, sans-serif;
            text-align: center;
            margin-top: 50px;
        }
        #game {
            margin: 20px auto;
            padding: 20px;
            border: 1px solid #ccc;
            width: 300px;
            border-radius: 10px;
        }
        #guess {
            padding: 5px;
            width: 100px;
        }
        button {
            padding: 5px 15px;
            background-color: #4CAF50;
            color: white;
            border: none;
            border-radius: 4px;
            cursor: pointer;
        }
        #message {
            margin-top: 20px;
            font-weight: bold;
        }
    </style>
</head>
<body>
    <div id="game">
        <h1>猜数字游戏</h1>
        <p>我已经想好了一个1-100之间的数字,猜猜看是多少?</p>
        <input type="number" id="guess" min="1" max="100">
        <button onclick="checkGuess()">猜</button>
        <div id="message"></div>
        <div id="attempts">尝试次数: 0</div>
    </div>
    <script src="game.js"></script>
</body>
</html>

JavaScript代码(game.js)

// 生成随机数
let randomNumber = Math.floor(Math.random() * 100) + 1;
let attempts = 0;

function checkGuess() {
    const guessInput = document.getElementById('guess');
    const message = document.getElementById('message');
    const attemptsDisplay = document.getElementById('attempts');

    const userGuess = parseInt(guessInput.value);

    if (isNaN(userGuess) || userGuess < 1 || userGuess > 100) {
        message.textContent = '请输入1-100之间的有效数字';
        return;
    }

    attempts++;
    attemptsDisplay.textContent = `尝试次数: ${attempts}`;

    if (userGuess === randomNumber) {
        message.textContent = `恭喜!你猜对了!数字是${randomNumber}`;
        message.style.color = 'green';
        guessInput.disabled = true;
    } else if (userGuess < randomNumber) {
        message.textContent = '太小了,再试一次';
        message.style.color = 'red';
    } else {
        message.textContent = '太大了,再试一次';
        message.style.color = 'red';
    }

    guessInput.value = '';
    guessInput.focus();
}

游戏实现要点

随机数生成 使用Math.random()生成0-1之间的随机数,乘以100后取整,加1得到1-100的随机整数。

游戏逻辑 比较用户输入与随机数,给出"太大"、"太小"或"正确"的反馈。每次猜测后清空输入框并保持焦点。

界面交互 通过DOM操作更新消息和尝试次数显示。猜中后禁用输入框防止继续游戏。

扩展功能建议

添加重新开始按钮

function restartGame() {
    randomNumber = Math.floor(Math.random() * 100) + 1;
    attempts = 0;
    document.getElementById('guess').disabled = false;
    document.getElementById('message').textContent = '';
    document.getElementById('attempts').textContent = '尝试次数: 0';
}

添加难度选择 可以通过修改随机数范围来调整难度,例如:

小游戏js实现

function setDifficulty(level) {
    if (level === 'easy') {
        randomNumber = Math.floor(Math.random() * 50) + 1;
    } else if (level === 'hard') {
        randomNumber = Math.floor(Math.random() * 200) + 1;
    } else {
        randomNumber = Math.floor(Math.random() * 100) + 1;
    }
    restartGame();
}

这个基础框架可以扩展为更复杂的游戏,如添加计时功能、保存最高分、添加动画效果等。

标签: 小游戏js
分享给朋友:

相关文章

js实现全选

js实现全选

实现全选功能的方法 在JavaScript中实现全选功能通常涉及监听全选复选框的点击事件,并根据其状态控制其他复选框的选中状态。以下是几种常见的实现方式: 基础DOM操作实现 通过获取所有目标复选框…

js实现复制功能

js实现复制功能

使用 document.execCommand 方法 这种方法适用于较旧的浏览器,但在现代浏览器中可能被逐步淘汰。通过创建一个临时的 textarea 元素,将文本内容放入其中,然后执行复制命令。…

js实现乘

js实现乘

JavaScript 实现乘法运算 在 JavaScript 中实现乘法运算可以通过多种方式完成,包括基本运算符、函数封装以及高级算法(如大数乘法)。以下是几种常见方法: 使用基本乘法运算符 Jav…

js防抖和节流实现

js防抖和节流实现

防抖(Debounce)的实现 防抖的核心思想是在事件被触发后,延迟执行回调函数。如果在延迟时间内再次触发事件,则重新计时。适用于输入框搜索、窗口大小调整等场景。 function debounce…

使用js实现

使用js实现

使用JavaScript实现 JavaScript可以通过Math.random()函数生成随机数,结合其他方法可以实现多种随机数生成需求。 // 生成0到1之间的随机小数 const random…

利用js实现

利用js实现

使用 JavaScript 实现 在 JavaScript 中,可以通过多种方式实现功能,具体取决于需求。以下是几种常见的方法: 方法一:使用原生 JavaScript // 示例代码 funct…