写一个网页版计算器javascript要求可以开根号,平方,求倒数,错误提示和简单四则运算
时间: 2024-12-12 19:18:22 浏览: 14
为了创建一个简单的网页版JavaScript计算器,我们可以利用HTML、CSS和JavaScript编写。以下是一个基本的示例:
```html
<!DOCTYPE html>
<html lang="zh">
<head>
<meta charset="UTF-8">
<title>简易计算器</title>
<style>
#calculator {
width: 200px;
padding: 20px;
border: 1px solid black;
margin: auto;
text-align: center;
}
.calc-btn {
width: 50px;
height: 50px;
margin: 5px;
font-size: 24px;
cursor: pointer;
}
</style>
</head>
<body>
<div id="calculator">
<input type="text" id="display" disabled>
<br><br>
<button class="calc-btn" onclick="appendNumber('7')">7</button>
<button class="calc-btn" onclick="appendNumber('8')">8</button>
<button class="calc-btn" onclick="appendNumber('9')">9</button>
<button class="calc-btn" onclick="appendOperator('+')">+</button>
<!-- ... (添加更多数字按钮和运算符按钮) -->
<button class="calc-btn" onclick="calculate()">=</button>
<button class="calc-btn" onclick="appendNumber('sqrt')"><span>√</span></button>
<button class="calc-btn" onclick="appendNumber('pow')"><span>^</span></button>
<button class="calc-btn" onclick="appendNumber('-1')">1/x</button>
</div>
<script>
let display = document.getElementById("display");
const operations = ['+', '-', '*', '/'];
function appendNumber(num) {
if (!isNaN(num)) {
display.value += num;
} else if (num === 'sqrt') {
// 开根号函数处理
let result = Math.sqrt(display.value);
if (result.isNaN()) {
alert("输入无效,无法计算开根号");
} else {
display.value = result;
}
} else if (num === 'pow') {
// 幂运算函数处理
try {
display.value = Math.pow(parseFloat(display.value), 2);
} catch (err) {
alert("输入无效,无法计算平方");
}
} else if (num === '-1') {
// 求倒数函数处理
let value = parseFloat(display.value);
if (value === 0) {
alert("零没有倒数");
} else {
display.value = 1 / value;
}
}
}
function appendOperator(op) {
if (operations.includes(op) && display.value !== '') {
display.value += op;
}
}
function calculate() {
try {
display.value = eval(display.value);
display.disabled = false;
} catch (err) {
display.value = "输入错误";
display.disabled = true;
alert("请输入有效的数学表达式");
}
}
</script>
</body>
</html>
```
这个例子包括了基本的数字和运算符按钮,以及对开根号、平方和求倒数的处理。注意,`eval()`函数用于计算用户输入的数学表达式,但在实际生产环境中应避免直接使用,因为它可能存在安全风险。
阅读全文