JS计算器

JS计算器

JS计算器

在这个现代化的数字时代,计算器成为人们生活中不可或缺的一部分。通过计算器,我们可以进行简单到复杂的数学运算,帮助我们解决各种问题。本文将介绍如何使用JavaScript编写一个简单的计算器,帮助你快速进行数字计算。

1. HTML结构

首先,我们需要创建一个基本的HTML结构来容纳计算器的各个元素。在HTML文件中,我们可以添加如下代码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Calculator</title>
    <link rel="stylesheet" href="styles.css">
</head>
<body>
    <div class="calculator">
        <div class="display"></div>
        <div class="buttons">
            <button class="number">7</button>
            <button class="number">8</button>
            <button class="number">9</button>
            <button class="operator">+</button>
            <button class="number">4</button>
            <button class="number">5</button>
            <button class="number">6</button>
            <button class="operator">-</button>
            <button class="number">1</button>
            <button class="number">2</button>
            <button class="number">3</button>
            <button class="operator">*</button>
            <button class="clear">C</button>
            <button class="number">0</button>
            <button class="operator">/</button>
            <button class="equal">=</button>
        </div>
    </div>
    <script src="script.js"></script>
</body>
</html>

在这个HTML结构中,我们创建了一个包含显示区域和按钮的计算器容器。按钮分为数字按钮、运算符按钮、清除按钮和等号按钮。

2. CSS样式

为了使计算器界面更美观,我们可以添加一些CSS样式。在styles.css文件中,可以添加如下样式:

.calculator {
    width: 300px;
    margin: 0 auto;
    border: 1px solid #ccc;
    padding: 10px;
    border-radius: 5px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}

.display {
    height: 50px;
    background-color: #f0f0f0;
    font-size: 24px;
    text-align: right;
    padding: 5px;
    margin-bottom: 10px;
}

.buttons {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 5px;
}

button {
    height: 50px;
    font-size: 20px;
    background-color: #f9f9f9;
    border: 1px solid #ccc;
    border-radius: 5px;
    cursor: pointer;
}

button:hover {
    background-color: #eaeaea;
}

这些样式可以让我们的计算器拥有简洁的外观,使用户体验更加友好。

3. JavaScript功能

在script.js文件中,我们来实现计算器的基本功能。首先,我们需要定义一些变量来存储计算器的状态和操作数。

let display = document.querySelector('.display');
let buttons = document.querySelectorAll('button');
let operand1 = '';
let operand2 = '';
let operator = null;
let result = null;

接着,我们可以编写函数来处理用户点击按钮的操作。例如,当用户点击数字按钮时,我们需要将数字显示在显示区域中。

function handleNumberClick(event) {
    const number = event.target.textContent;

    if (operator === null) {
        operand1 += number;
        display.textContent = operand1;
    } else {
        operand2 += number;
        display.textContent = operand2;
    }
}

buttons.forEach(button => {
    if (button.classList.contains('number')) {
        button.addEventListener('click', handleNumberClick);
    }
});

当用户点击运算符按钮时,我们需要记录用户选择的运算符,并在需要时进行运算。

function handleOperatorClick(event) {
    operator = event.target.textContent;
}

buttons.forEach(button => {
    if (button.classList.contains('operator')) {
        button.addEventListener('click', handleOperatorClick);
    }
});

最后,当用户点击等号按钮时,我们需要根据运算符进行相应的计算,并将结果显示在显示区域中。

function handleEqualClick() {
    let num1 = parseFloat(operand1);
    let num2 = parseFloat(operand2);

    switch (operator) {
        case '+':
            result = num1 + num2;
            break;
        case '-':
            result = num1 - num2;
            break;
        case '*':
            result = num1 * num2;
            break;
        case '/':
            result = num1 / num2;
            break;
        default:
            result = null;
    }

    display.textContent = result;

    operand1 = result.toString();
    operand2 = '';
    operator = null;
}

buttons.forEach(button => {
    if (button.classList.contains('equal')) {
        button.addEventListener('click', handleEqualClick);
    }
});

通过以上功能的实现,我们完成了一个简单的JavaScript计算器。用户可以通过点击数字、运算符和等号按钮来进行基本的数学运算。

4. 运行效果

在浏览器中打开HTML文件,您将看到一个简单的计算器界面。您可以点击数字按钮、运算符按钮和等号按钮,以进行数字计算。

通过本文的介绍,相信您已经学会了如何使用JavaScript构建一个简单的计算器。您可以根据自己的需求扩展功能,使其更加强大和实用。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程