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

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

问题描述

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

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;

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

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