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)