javascript - 数字加法运算

标签 javascript concatenation addition

为了练习,我将这段代码作为计算器的一部分编写。它主要按预期工作。

但是,加法操作连接两个数字而不是将它们相加。为什么?

function calcApp (aNumber, bNumber) {
    var a = prompt("Enter A number :");
    var b = prompt("Enter B number :");
    var mathSign = prompt("Enter Math Sign :");

    aNumber = a;
    bNumber = b;

    if (mathSign == "+") {
        alert(a + b);
    }
    else if (mathSign == "-") {
        alert(a - b);
    }
    else if (mathSign == "*") {
        alert(a * b);
    }
    else if (mathSign == "/") {
        alert(a / b);
    }
    else {
        prompt("Enter a valid Math sign!!")
    }
}
calcApp();

最佳答案

提示 返回一个字符串。当您对字符串使用 + 运算符时,它们会被连接起来。

您必须获取用户输入的数字值。您可以通过多种不同的方式做到这一点:

var str = '5.4';

console.log(parseInt(str, 10)); // parse integer from decimal numeric string
console.log(parseFloat(str));
console.log(+str);
console.log(Number(str));

关于javascript - 数字加法运算,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44475750/

相关文章:

javascript - 事件循环、回调队列和Javascript的单线程是如何联系的?

javascript - 如果有人使用 jquery 选择美国,则需要更多输入

javascript - 使 <p> 标签保持 div 的宽度,并在其右侧添加一个链接(以图标作为背景)

javascript - 结果中不显示连接的空格

c# - 如何将显示成员设置为串联表达式?数据源是linq查询

asp.net - 如何在 ASP.NET 中连接网页

javascript - Jquery.form (3.51.0-2014.06.20) fileupload 在 IE9 中不起作用(sharepoint 应用程序)

javascript - 如何在 ExtJS 中向 html 表添加新行

jquery - 多个文本字段的加法和减法

javascript - 三个js添加相机