计算器 Javascript/Jquery 存储变量

Calculator Javascript/Jquery storing variables

我是新认识的学生javascript。我目前很难理解在我的计算器端项目中存储变量的简单概念。我的问题是当单击运算符 (+,-,/,*) 时,我想将第一个值存储为变量(第一个用户输入)。然后在用户再次点击数字后,显示屏将清除并显示第二个变量(或第二个用户输入)。然后,如果按下运算符按钮或等于按钮,它将计算两个变量(因此 var + var2)。我为 variable1 使用了一个全局变量,但是在清除项目后我无法将第二个变量分配给用户输入。我觉得这个问题有一个简单的答案,但我想知道我从根本上做错了什么,这样我就可以开始重新审视我需要做的所有主题。无论如何,任何帮助都会很棒!谢谢

'http://codepen.io/kevk87/pen/EVoEaa`

您忘记了 # select 或行 $("screen").html("");,jQuery 不会 select 正确的元素。另外你还没有实现等于运算符。

$(".operator").on("click",function() {
    number = $("#screen").html();
    $("screen").html("");
    number2 = $("#screen").html();
});

首先,您的语句中存在语法错误,导致 jQuery 不是 select 正确的元素。我已在下面的代码片段中修复了该问题。

其次,您需要实现等于运算符以将所有这些放在一起。同时,为了解决您的问题并为您指明正确的方向,您并没有真正抓住第二个要素。每次用户单击运算符时,您都会将屏幕上的值重新分配给 'number' 变量,然后清除屏幕并将屏幕上的值(很清楚,因为您刚刚清除了它)分配给'number2'.

解决此问题的一种方法是检查 'number' 变量是否有值,如果有,则将下一个值分配给 'number2' 变量。这是执行此操作的代码片段。

$(".operator").on("click",function() {
    if (number == null) {
        number = $("#screen").html();
    }
    else {
        number2 = $("#screen").html();
        $("#screen").html("");
    }
});