添加Javascript变量

cod*_*ude 1 javascript math variables

所以,我对JavaScript比较陌生,我想知道如何从两个输入中添加值并回显结果.这是我到目前为止所拥有的:

function math (form) {
    var input1 = form.input1.value;
    var input2 = form.input2.value;
    var input3 = input1 + input2;
    document.write (input3);
}
Run Code Online (Sandbox Code Playgroud)
<form action="" method="GET">
   <input type="text" name="input1">
   <input type="text" name="input2">
   <input type="button" name="button" onClick="math(this.form)">
</form> 
Run Code Online (Sandbox Code Playgroud)

我预计当我在每个输入中输入一个数字时,它会吐出两个数字的总和.相反,它只是单独打印两个数字.

如何才能打印两个数字的总和?

pim*_*vdb 17

.value给出文本框中的字符,即字符串.你不知何故需要告诉JavaScript它是一个数字.否则你将连接字符串(str + str连接; num + num正在添加算术).

字符串到数字转换最容易完成,+如下所示:

+input1
Run Code Online (Sandbox Code Playgroud)

所以在你的情况下:

document.write(+input1 + +input2);
Run Code Online (Sandbox Code Playgroud)

但是,document.write不是显示事物的方式.您可能想要alert,或将其放在另一个文本框或类似的东西中.document.write将清除屏幕.


And*_*rew 12

当你读它们时它们是字符串,它们必须先被解析,

var input3 = parseInt(input1, 10) + parseInt(input2, 10);
Run Code Online (Sandbox Code Playgroud)

[编辑]只是详细说明,parseInt和Unary Plus 之间的区别在于错误处理,

var a = parseInt('123o45', 10); //123
var b = +'123o45' // NaN
Run Code Online (Sandbox Code Playgroud)