添加两个数字将它们连接起来,而不是计算总和

2022-01-30 00:00:00 javascript html

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

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

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

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;

相关文章