首页 > 解决方案 > 如何修复Javascript中输入的偶数的总和?

问题描述

我刚刚使用 C 语言编写了这段代码并成功运行,但我尝试用 Javascript 编写它不起作用.......

谢谢 !!!!

function addNumbers(){
	    var a = Number(document.getElementById("num1").value);
		var b = Number(document.getElementById("num2").value);
		var c = Number(document.getElementById("num3").value);
		var d = Number(document.getElementById("num4").value);
		var e = Number(document.getElementById("num5").value);
		var sum = document.getElementById("answer").value;
		if (var a%2==0){
            var sum = var sum + var a;
        }

        if (var b%2==0){
            var sum = var sum + var b;
        }

        if (var c%2==0){
            var sum = var sum + var c;
        }

        if (var d%2==0){
            var sum = var sum + var d;
        }

        if (var e%2==0){
            var sum = var sum + var e;
        }
     }
    <table>
			<tr>
				<td>1</td>
				<td><input class="txt" id="num1">
			</tr>
			<tr>
				<td>2</td>
				<td><input class="txt" id="num2">
			</tr>
			<tr>
				<td>3</td>
				<td><input class="txt" id="num3">
			</tr>
			<tr>
				<td>4</td>
				<td><input class="txt" id="num4">
			</tr>
			<tr>
				<td>5</td>
				<td><input class="txt" id="num5">
			</tr>
			<tr>
				
				<td><input type="button" name="Sumbit" value="+" onclick="addNumbers()"/>
			</tr>
			<tr>
				<td>SUM:</td>
				<td><input class="txt" id="answer">
			</tr>
			</table>

html代码

标签: javascripthtml

解决方案


您可以通过将输入的 id 直接用作具有其 value 属性的变量来收集数组中的所有值,并通过检查和添加值来减少它。

function calc() {
    sum.innerHTML = [num1.value, num2.value, num3.value, num4.value, num5.value]
        .reduce((s, v) => s + (v % 2 === 0 && +v), 0);
}
<input id="num1" type="text"><br>
<input id="num2" type="text"><br>
<input id="num3" type="text"><br>
<input id="num4" type="text"><br>
<input id="num5" type="text"><br>
<button onclick="calc();">calc</button><br>
Even Sum: <span id="sum">0</span>


推荐阅读