如何在 Javascript 中将一个简单整数与另一个整数相加?
我将 NaN 作为总值。
<script type="text/javascript">
var total = 0;
document.getElementById("dds1").onkeyup = function() {
total = total + parseInt(this.value,10);
updateIt();
};
function updateIt() {
//tofixed(2)
document.getElementById("mySpan").innerHTML = total;
}
但如果我执行以下操作:
total = parseInt(this.value,10);
然后 total 有一个值(一个整数值)。
最佳答案
问题是您执行加法 读取每个键上的输入值。例如,如果用户按 BACKSPACE 键清除输入,则该值将为空字符串,这将在 parseInt 后产生 NaN。一旦你有了 NaN(在你的 total
变量中),你就不能再摆脱它了。
试试这个:
document.getElementById('dds1').onkeyup = function() {
var value = parseInt(this.value, 10);
if ( !isNaN(value) ) {
total += value;
updateIt();
}
};
在这里,您首先检查输入值是否可以解析为数字。如果不是,您只需忽略它即可。
另一种方法是这样的:
document.getElementById('dds1').onkeyup = function() {
var value = parseInt(this.value, 10);
isNaN(value) && return;
total += value;
updateIt();
};
在这里,如果您读取一个无法转换为数字的输入值,您只需将函数完全返回即可。
关于Javascript 添加整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4820827/