Javascript总和值

And*_*dha 4 javascript

我需要在javascript中总结几个值.我试过使用以下代码

var a = 2;
var b = 5;
c = a+b;
Run Code Online (Sandbox Code Playgroud)

但是,输出(c)只合并这两个值,而不是计算a和b的值.所以给出的输出是:

c = 25
Run Code Online (Sandbox Code Playgroud)

我相信你们可以轻松地帮助我.先谢谢.关注安达.

num*_*407 8

您的代码正在添加(连接)字符串.您确定您发布的代码代表您的问题吗?你写的东西应该有效.请确保您在实际代码中没有说:

var a = '2'; // or something similar
Run Code Online (Sandbox Code Playgroud)

或者,如果从某处解析了值,请务必parseInt(a, 10)在添加之前调用它们,10为基数.

或者如评论中所指出的,该Number功能可能适合您的目的.

  • 这得看情况.`parseInt(a)`不改变`a`变量,它返回解析的int.所以你可能需要`a = parseInt(a)`或`c = parseInt(a)+ parseInt(b)` (3认同)

kje*_*ilh 8

确保值是数字,否则它们将连续而不是求和.

a = parseInt(a, 10); // a is now int 
Run Code Online (Sandbox Code Playgroud)

  • 一定要在调用`parseInt()`时使用`radix`参数. (2认同)

小智 6

作者可能已经提出了"简化"代码,因此我们可以得到一个想法.在获取输入值时遇到同样的问题.JS将其解释为字符串.使用"Number()"解决了问题:

var sum = Number(document.getElementById("b4_f2_"+i).value) + Number(document.getElementById("b4_f3_"+i).value) + Number(document.getElementById("b4_f4_"+i).value);
Run Code Online (Sandbox Code Playgroud)