【问题标题】:Creating an calculator with javascript gives unexpected output [duplicate]用javascript创建一个计算器会产生意外的输出[重复]
【发布时间】:2015-05-03 15:36:47
【问题描述】:

大家好,

我正在尝试创建一个可以求和的计算器。

我想做的是:

  1. 搜索加号,并获取加号在数字中的位置
  2. 获取product1product2
  3. 将它们加起来为y.value

现在你可以看到这不像3 + 2 = 5。但它给了3 + 2 = 32

所以我看到我的脚本没有将其视为一个数字,而是一个字符串。那么我必须做些什么才能让它发挥作用呢?

感谢您的帮助!

function start() {
  var snelheid = 10;
  var x = document.getElementById("input");
  var y = document.getElementById("output");
  x.value = "3+2"

  function process() {
    var place_plus = x.value.indexOf("+");
    var product1 = x.value.slice(0, place_plus);
    var product2 = x.value.slice(place_plus + 1, x.value.length);
    y.value = product1 + product2;
    document.getElementById("var").innerHTML = product1 + " + " + product2 + " = " + (product1 + product2);
  }

  var animateInterval = setInterval(process, snelheid);
}

window.addEventListener('load', function(event) {
  start();
});
<textarea id="input"></textarea>
<textarea id="output"></textarea>

<p id="var"></p>

【问题讨论】:

    标签: javascript string numbers textarea


    【解决方案1】:

    您可以使用一元运算符 (+) 将字符串转换为数字:

    var product1 = +x.value.slice(0, place_plus);
    var product2 = +x.value.slice(place_plus + 1, x.value.length);
    

    【讨论】:

    • 感谢您的快速响应!
    猜你喜欢
    • 2021-11-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-09-21
    • 1970-01-01
    • 1970-01-01
    • 2020-05-21
    • 1970-01-01
    相关资源
    最近更新 更多