【发布时间】:2017-12-23 15:32:24
【问题描述】:
我正在尝试创建一个在它们之间添加 6 个输入值的程序,但如果我不给出值(例如,如果我只给出 5 个值),则结果为 NaN。所以 我尝试使用 for 循环和 if 语句为空值赋予 0 值,但它不起作用。 可以请您帮忙吗?
代码:
document.getElementById("b").onclick = function() {
var values = new Array();
values[0] = document.getElementById("x").value;
values[1] = document.getElementById("y").value;
values[2] = document.getElementById("z").value;
values[3] = document.getElementById("a").value;
values[4] = document.getElementById("g").value;
values[5] = document.getElementById("c").value;
for (i = 0; i < values.length; i++) {
if (isNaN(values[i])) {
values[i] = 0;
}
}
var risultato = parseFloat(values[0]) + parseFloat(values[1]) + parseFloat(values[2]) + parseFloat(values[3]) + parseFloat(values[4]) + parseFloat(values[5]);
document.getElementById("risultato").innerHTML = "La massa del prodotto è " + risultato + ".";
}
<form>
<input type="number" placeholder="Valore 1" id="x" required>
<input type="number" placeholder="Valore 2" id="y" required>
<input type="number" placeholder="Valore 3 (se presente)" id="z">
<input type="number" placeholder="Valore 4 (se presente)" id="a">
<input type="number" placeholder="Valore 5 (se presente)" id="g">
<input type="number" placeholder="Valore 6 (se presente)" id="c">
<input type="button" class="btn btn-primary" id="b" value="Applica" />
</form>
<div id="risultato" class="desc"></div>
编辑:这不是重复的,因为我在这里写的问题 (Why can't I do addition between 4 variables in JavaScript but I can do it with 3 variables?) 是关于加法的,而这个问题是关于 isNaN 值的。
【问题讨论】:
-
+document.getElementById("x").value就够了...
标签: javascript arrays for-loop if-statement