添加两个数字连接它们而不是计算总和 [英] Adding two numbers concatenates them instead of calculating the sum

查看:67
本文介绍了添加两个数字连接它们而不是计算总和的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我添加了两个数字,但没有得到正确的值。

例如,执行 1 + 2 返回12而不是3



我在这段代码中做了什么错误?

  function myFunction(){var y = document.getElementById(txt1)。value; var z = document.getElementById(txt2).value; var x = y + z; document.getElementById(demo)。innerHTML = x;}  

< p为H.点击按钮来计算x。 < button onclick =myFunction()>试试< / button>< / p>< p>输入第一个数字:< input type =textid =txt1name =text1value =1>输入第二个数字:< input type =textid =txt2name =text2value =2>< / p>< p id =demo>< / p> / code>


解决方案

不是数字。从字符串中产生一个数字的最简单的方法是用 + 加前缀:

  var x = + y + + z; 


I am adding two numbers, but I don't get a correct value.

For example, doing 1 + 2 returns 12 and not 3

What am I doing wrong in this code?

function myFunction() {
  var y = document.getElementById("txt1").value;
  var z = document.getElementById("txt2").value;
  var x = y + z;
  document.getElementById("demo").innerHTML = x;
}

<p>
  Click the button to calculate x.
  <button onclick="myFunction()">Try it</button>
</p>
<p>
  Enter first number:
  <input type="text" id="txt1" name="text1" value="1">
  Enter second number:
  <input type="text" id="txt2" name="text2" value="2">
</p>
<p id="demo"></p>

解决方案

They are actually strings not numbers. The easiest way to produce a number from a string is to prepend it with+:

var x = +y + +z;

这篇关于添加两个数字连接它们而不是计算总和的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆