javascript - 将 var 添加在一起

标签 javascript input addition microsoft-edge var

我正在制作一个计算器,因为我很无聊,遇到了一个问题,当我尝试执行“x + y”(当x = 4且y = 2时)时,我得到42而不是6,有人可以解释一下吗这? (我使用的是 Edge)

这是 JS:

function myFunction1() {
    var x = document.getElementById("myText1").value;
    var y = document.getElementById("myText2").value;
    var z = document.getElementById("myText3").value;
    var a = x + y;
    if (z == "+") {
    document.getElementById("demo3").innerHTML = a;
    }

    if (z == "-") {
    document.getElementById("demo3").innerHTML = x - y;
    }

    if (z == "*") {
    document.getElementById("demo3").innerHTML = x * y;
    }

    if (z == "/") {
    document.getElementById("demo3").innerHTML = x / y;
    }

}

HTML:

<p>Your Problem:<br/><br/>
  <input name="myText" id="myText1" type="text" size="7"> <input name="myText" id="myText3" type="text" maxlength="1" size="1"> <input name="myText" id="myText2" type="text" size="7"> = <span id="demo3"></span>
</p>
<p>
  <button onclick="myFunction1()">Calculate</button>
</p>

页面/结果:

enter image description here

最佳答案

那是因为您正在尝试将字符串添加在一起。您需要使用parseInt来获取字符串的数字部分。有关 parseInt 的更多信息 here .

function myFunction1() {
    var x = parseInt(document.getElementById("myText1").value);
    var y = parseInt(document.getElementById("myText2").value);
    var z = document.getElementById("myText3").value;
    var a = x + y;
    if (z == "+") {
    document.getElementById("demo3").innerHTML = a;
    }

    if (z == "-") {
    document.getElementById("demo3").innerHTML = x - y;
    }

    if (z == "*") {
    document.getElementById("demo3").innerHTML = x * y;
    }

    if (z == "/") {
    document.getElementById("demo3").innerHTML = x / y;
    }

}

关于javascript - 将 var 添加在一起,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60537070/

相关文章:

javascript - 如何在 JavaScript 中匹配以输入结尾结尾的最小模式?

javascript - 使用 jQuery 移动点击事件的背景位置

c++ - 从文件输入 CGAL 类

java - 在 Java 中添加多个对象到列表时遇到问题

javascript - 不寻常的 JavaScript 加法与串联行为

javascript - 禁止移动 html 元素

javascript - meteor.js 和backbone.js 是互补的吗?

php - 如何在自定义验证规则中使用 laravel 的验证规则?

javascript - 在 php javascript 之后动态插入行

java - 如何让我的 ArrayList 添加 52 个唯一的对象而不是全部相同?