Javascript 使用 if/else 语句的计算器
Javascript Calculator using if/else statements
我有一个学校项目要求我使用 if/else 语句构建一个基本的 Javascript 计算器。我对这门语言(以及一般的编程)还很陌生,在应用我学到的语法以及如何成功解决问题时遇到了麻烦。
继续代码:正如您将在 HTML 文件的注释中看到的那样,所有 javascript 代码都必须在 js 文件中。首先,我需要通过添加代码来绑定 onclick 事件,以将所有输入元素放入一个名为 inputs 的数组(我已经完成),然后使用 for-loop 循环访问一个数组(我已经开始)。然后,在 for 循环中,我需要使用 if/else 语句跳过不是按钮的输入元素,并将其他输入元素的 onclick 处理程序设置为调用其中的 calcu 变量的函数。这是我在如何完成这项任务上卡住的地方。
我还需要确保将输入 [i].id 也传递给计算器。然后当然,我必须使用 if/else 语句完成 calcu() 函数。
在 js 文件中,我插入了注释以显示我的思考过程和我问自己解决问题的问题。
如果您能给我任何帮助或指导,我将不胜感激。谢谢!
var calcu = function(calcValue) {
/* "calc.output.value += "1";"" use to output numbers? */
if (calcValue) {
}
};
document.getElementById(inputs[i].id).onclick = calcu;
for (var i = 0; i <= inputs[id].length, i++) {
/* input button elements onlick handler needs to be set to (equal to?) a
function that calls the calcu variable inside of it */
if (input.type = button) {
console.log()
/* Need input that is not a button to be skipped*/
} else(input.type != button) {
}
}
<body>
<div id="content">
<div id="calculator-container">
<!-- DO NOT CHANGE THE FORM! Only use external JavaScript files -->
<form name="calc">
<label for="output">A Basic Calculator</label>
<!-- the name of the textbox is "output" -->
<input id="output" name="output" type="text" readonly>
<br>
<input type="button" id="1" value=" 1 ">
<input type="button" id="2" value=" 2 ">
<input type="button" id="3" value=" 3 ">
<input type="button" id="+" value=" + ">
<br>
<input type="button" id="4" value=" 4 ">
<input type="button" id="5" value=" 5 ">
<input type="button" id="6" value=" 6 ">
<input type="button" id="-" value=" - ">
<br>
<input type="button" id="7" value=" 7 ">
<input type="button" id="8" value=" 8 ">
<input type="button" id="9" value=" 9 ">
<input type="button" id="*" value=" x ">
<br>
<input type="button" id="c" value=" C ">
<input type="button" id="0" value=" 0 ">
<input type="button" id="equate" value=" = ">
<input type="button" id="/" value="÷">
</form>
</div>
</div>
</body>
我发现了一些基本错误,例如; or = missing 如果你想把条件放在 else 部分,那么你必须使用 else if 条件。您现在需要在 for 循环中正确传递输入值。
var calcu = function(calcValue) {
if (calcValue) {
}
}
document.getElementById(inputs[i].id).onclick = calcu;
for (var i = 0; i <= inputs[id].length; i++)
{
if (input.type == button)
{
console.log();
}
else if(input.type != button) {
}
}
这是您的 html 代码。
<body>
<div id="content">
<div id="calculator-container">
<!-- DO NOT CHANGE THE FORM! Only use external JavaScript files -->
<form name="calc">
<label for="output">A Basic Calculator</label>
<!-- the name of the textbox is "output" -->
<input id="output" name="output" type="text" readonly>
<br>
<input type="button" id="1" value=" 1 ">
<input type="button" id="2" value=" 2 ">
<input type="button" id="3" value=" 3 ">
<input type="button" id="+" value=" + ">
<br>
<input type="button" id="4" value=" 4 ">
<input type="button" id="5" value=" 5 ">
<input type="button" id="6" value=" 6 ">
<input type="button" id="-" value=" - ">
<br>
<input type="button" id="7" value=" 7 ">
<input type="button" id="8" value=" 8 ">
<input type="button" id="9" value=" 9 ">
<input type="button" id="*" value=" x ">
<br>
<input type="button" id="c" value=" C ">
<input type="button" id="0" value=" 0 ">
<input type="button" id="equate" value=" = ">
<input type="button" id="/" value="÷">
</form>
</div>
</div>
</body>
希望对您有所帮助。
嗯,我猜是你们学校的'homework'。
我假设这个计算器应该先乘除再加减。
如果我是你,我会按以下顺序处理任务:
- 将用户输入存储到
inputs
- 当用户按下
=
时,它会迭代inputs
并执行计算。
在执行计算时,声明一个临时变量,在每次计算后保持更新的值。如果有指示,您应该在加法和减法之前执行乘法和除法。
输出计算值
您可能会遇到以下几个问题:
- 您需要将用户输入转换为正确的数字。例如,输入
3, 5, 1
需要转换为 351
- 在迭代
inputs
数组时,您需要找到一种正确的方法在加法和减法之前执行乘法和除法。
编码愉快~
使用 javascript
中的 if else 条件创建计算器
const operator = ( '/' );
const num1 = 1;
const num2 = 2;
let result;
if (operator == '+') {
result = num1 + num2;
} else if (operator == '-') {
result = num1 - num2;
} else if (operator == '*') {
result = num1 * num2;
} else {
result = num1 / num2;
}
//console.log(`${num1} ${operator} ${num2} = ${result}`);
console.log(`${num1}${operator}${num2}= ${result}`);
我有一个学校项目要求我使用 if/else 语句构建一个基本的 Javascript 计算器。我对这门语言(以及一般的编程)还很陌生,在应用我学到的语法以及如何成功解决问题时遇到了麻烦。
继续代码:正如您将在 HTML 文件的注释中看到的那样,所有 javascript 代码都必须在 js 文件中。首先,我需要通过添加代码来绑定 onclick 事件,以将所有输入元素放入一个名为 inputs 的数组(我已经完成),然后使用 for-loop 循环访问一个数组(我已经开始)。然后,在 for 循环中,我需要使用 if/else 语句跳过不是按钮的输入元素,并将其他输入元素的 onclick 处理程序设置为调用其中的 calcu 变量的函数。这是我在如何完成这项任务上卡住的地方。
我还需要确保将输入 [i].id 也传递给计算器。然后当然,我必须使用 if/else 语句完成 calcu() 函数。
在 js 文件中,我插入了注释以显示我的思考过程和我问自己解决问题的问题。
如果您能给我任何帮助或指导,我将不胜感激。谢谢!
var calcu = function(calcValue) {
/* "calc.output.value += "1";"" use to output numbers? */
if (calcValue) {
}
};
document.getElementById(inputs[i].id).onclick = calcu;
for (var i = 0; i <= inputs[id].length, i++) {
/* input button elements onlick handler needs to be set to (equal to?) a
function that calls the calcu variable inside of it */
if (input.type = button) {
console.log()
/* Need input that is not a button to be skipped*/
} else(input.type != button) {
}
}
<body>
<div id="content">
<div id="calculator-container">
<!-- DO NOT CHANGE THE FORM! Only use external JavaScript files -->
<form name="calc">
<label for="output">A Basic Calculator</label>
<!-- the name of the textbox is "output" -->
<input id="output" name="output" type="text" readonly>
<br>
<input type="button" id="1" value=" 1 ">
<input type="button" id="2" value=" 2 ">
<input type="button" id="3" value=" 3 ">
<input type="button" id="+" value=" + ">
<br>
<input type="button" id="4" value=" 4 ">
<input type="button" id="5" value=" 5 ">
<input type="button" id="6" value=" 6 ">
<input type="button" id="-" value=" - ">
<br>
<input type="button" id="7" value=" 7 ">
<input type="button" id="8" value=" 8 ">
<input type="button" id="9" value=" 9 ">
<input type="button" id="*" value=" x ">
<br>
<input type="button" id="c" value=" C ">
<input type="button" id="0" value=" 0 ">
<input type="button" id="equate" value=" = ">
<input type="button" id="/" value="÷">
</form>
</div>
</div>
</body>
我发现了一些基本错误,例如; or = missing 如果你想把条件放在 else 部分,那么你必须使用 else if 条件。您现在需要在 for 循环中正确传递输入值。
var calcu = function(calcValue) {
if (calcValue) {
}
}
document.getElementById(inputs[i].id).onclick = calcu;
for (var i = 0; i <= inputs[id].length; i++)
{
if (input.type == button)
{
console.log();
}
else if(input.type != button) {
}
}
这是您的 html 代码。
<body>
<div id="content">
<div id="calculator-container">
<!-- DO NOT CHANGE THE FORM! Only use external JavaScript files -->
<form name="calc">
<label for="output">A Basic Calculator</label>
<!-- the name of the textbox is "output" -->
<input id="output" name="output" type="text" readonly>
<br>
<input type="button" id="1" value=" 1 ">
<input type="button" id="2" value=" 2 ">
<input type="button" id="3" value=" 3 ">
<input type="button" id="+" value=" + ">
<br>
<input type="button" id="4" value=" 4 ">
<input type="button" id="5" value=" 5 ">
<input type="button" id="6" value=" 6 ">
<input type="button" id="-" value=" - ">
<br>
<input type="button" id="7" value=" 7 ">
<input type="button" id="8" value=" 8 ">
<input type="button" id="9" value=" 9 ">
<input type="button" id="*" value=" x ">
<br>
<input type="button" id="c" value=" C ">
<input type="button" id="0" value=" 0 ">
<input type="button" id="equate" value=" = ">
<input type="button" id="/" value="÷">
</form>
</div>
</div>
</body>
希望对您有所帮助。
嗯,我猜是你们学校的'homework'。
我假设这个计算器应该先乘除再加减。
如果我是你,我会按以下顺序处理任务:
- 将用户输入存储到
inputs
- 当用户按下
=
时,它会迭代inputs
并执行计算。 在执行计算时,声明一个临时变量,在每次计算后保持更新的值。如果有指示,您应该在加法和减法之前执行乘法和除法。
输出计算值
您可能会遇到以下几个问题:
- 您需要将用户输入转换为正确的数字。例如,输入
3, 5, 1
需要转换为351
- 在迭代
inputs
数组时,您需要找到一种正确的方法在加法和减法之前执行乘法和除法。
编码愉快~
使用 javascript
中的 if else 条件创建计算器const operator = ( '/' );
const num1 = 1;
const num2 = 2;
let result;
if (operator == '+') {
result = num1 + num2;
} else if (operator == '-') {
result = num1 - num2;
} else if (operator == '*') {
result = num1 * num2;
} else {
result = num1 / num2;
}
//console.log(`${num1} ${operator} ${num2} = ${result}`);
console.log(`${num1}${operator}${num2}= ${result}`);