用JavaScript写一个计算器
时间: 2023-03-30 20:03:24 浏览: 103
好的,我可以回答这个问题。以下是一个用 JavaScript 编写的计算器示例:
HTML 代码:
```
<div>
<input type="text" id="result" readonly>
</div>
<div>
<button onclick="clearResult()">清除</button>
<button onclick="calculate()">=</button>
</div>
<div>
<button onclick="appendNumber(7)">7</button>
<button onclick="appendNumber(8)">8</button>
<button onclick="appendNumber(9)">9</button>
<button onclick="appendOperator('+')">+</button>
</div>
<div>
<button onclick="appendNumber(4)">4</button>
<button onclick="appendNumber(5)">5</button>
<button onclick="appendNumber(6)">6</button>
<button onclick="appendOperator('-')">-</button>
</div>
<div>
<button onclick="appendNumber(1)">1</button>
<button onclick="appendNumber(2)">2</button>
<button onclick="appendNumber(3)">3</button>
<button onclick="appendOperator('*')">*</button>
</div>
<div>
<button onclick="appendNumber()"></button>
<button onclick="appendOperator('/')">/</button>
</div>
```
JavaScript 代码:
```
let currentNumber = '';
let currentOperator = '';
let result = ;
function appendNumber(number) {
currentNumber += number;
document.getElementById('result').value = currentNumber;
}
function appendOperator(operator) {
if (currentOperator) {
calculate();
}
currentOperator = operator;
result = parseInt(currentNumber);
currentNumber = '';
}
function calculate() {
switch (currentOperator) {
case '+':
result += parseInt(currentNumber);
break;
case '-':
result -= parseInt(currentNumber);
break;
case '*':
result *= parseInt(currentNumber);
break;
case '/':
result /= parseInt(currentNumber);
break;
}
currentNumber = '';
currentOperator = '';
document.getElementById('result').value = result;
}
function clearResult() {
currentNumber = '';
currentOperator = '';
result = ;
document.getElementById('result').value = '';
}
```
这个计算器可以进行加、减、乘、除四种基本运算,也可以清除结果。