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构建一个简单的计算器。您可以根据自己的需求扩展功能,使其更加强大和实用。
极客笔记