如何总结从输入标签两个数字? [重复](how to sum two numbers from

2019-06-17 17:46发布

可能重复:
如何添加两个字符串,如果他们的数字?

我写了一个简单的JavaScript代码,我想用两个输入框和两个值加号。 下面的代码,我看到的结果,而不是1520的35。

我怎样才能解决这个问题?

n1 <input type = "number" id = "n1" value=15 />
n2 <input type = "number" id = "n2" value=20 />

<p>Sum?</p>
<button onclick="sum()">Try it</button>
<p id="demo2">Result?? </p>

<script type="text/javascript">
 function sum() 
{ 
    var fn, ln; 
    fn = document.getElementById("n1").value; 
    ln = document.getElementById("n2").value; 
    result =  (fn+ln); 
    document.getElementById("demo2").innerHTML = result; 
}
</script>

Answer 1:

使用parseInt()parseFloat() ; 您所遇到的问题是,你是连接两个字符串,不添加两个数字。 parseInt()假定它找到一个实数)由字符串转换为一个地址数的问题:

 function sum() 
{ 
    var fn, ln, result; 
    fn = parseInt(document.getElementById("n1").value, 10);
    ln = parseInt(document.getElementById("n2").value, 10);
    result =  (fn+ln); 
    document.getElementById("demo2").innerHTML = result; 
}

, 10 ,该后显示value是基数,保证了返回数量(如果有的话)将其数字基。

还要注意, result变量应该在函数内部被声明为好,以避免污染全球范围内(也可能在其他地方创造与其他变量的问题)。

参考文献:

  • parseFloat()
  • parseInt()


Answer 2:

result =  (parseFloat(fn)+parseFloat(ln)); 


文章来源: how to sum two numbers from input tag? [duplicate]