gpt4 book ai didi

javascript - jQuery 实现的计算器

转载 作者:行者123 更新时间:2023-11-28 09:25:54 24 4
gpt4 key购买 nike

伙计们。我正在尝试使用 jQuery 创建一个带有基本操作的基于网络的计算器。我已经实现了加法操作。现在,我迷上了减法。

以下是单击减号按钮时的代码片段:

$("#btnSub").click(function () {
holdValue = $("#result").val();
currentValue = $("#result").val("0");

flagSub = "1";
flagNotEmpty = "0";
flagDecimal = "0";
});

下面是单击等于按钮时的代码片段:

$("#btnEquals").click(function () {
if (flagNotEmpty == "0") {
alert("Missing Value.");
} else {
if (flagAdd == "1") {
currentValue = $("#result").val();
var output = parseFloat(holdValue) + parseFloat(currentValue);
$("#result").val(parseFloat(output));
} else if (flagSub == "1") {
currentValue = $("#result").val();
var output2 = parseFloat(holdValue) - parseFloat(currentValue);
$("#result").val(parseFloat(output2));
}
}

flagSub = "0";
flagAdd = "0";
flagNotEmpty = "0";
flagDecimal = "0";
});

变量函数:

  1. flagSub:用于判断选择的运算是减法

  2. flagNotEmpty:用于确定选择运算符后是否按下了数字。如果单击运算符按钮后的等号,则显示错误消息。

  3. flagDecimal:用于告诉程序已经输入了小数。显示小数点重复的错误消息。

该程序的问题是,当您执行第一个运算时,它无法执行减法。也就是说,当浏览器加载 UI 并且您执行减法时,什么也不会发生。但是,例如,当您单击 1 + 2 = 时,程序会在文本框中显示 3。无需刷新页面,点击- 10 =。显示差异。

要从头开始,请刷新页面;完成所有操作后,将仅添加 CLEAR 按钮。

只是想知道我的算法出了什么问题。对于带有 htmlcss 的完整代码,这里是它的 fiddle .

顺便说一句,我刚刚开始学习 jQuery,所以请原谅我这种困惑且可能效率低下的编码方式。非常感谢您的帮助。提前致谢。

最佳答案

flagAdd 需要初始化,您可以更改 btnSub 处理程序来执行此操作

$("#btnSub").click(function () {
holdValue = $("#result").val();
currentValue = $("#result").val("0");

flagAdd = "0";
flagSub = "1";
flagNotEmpty = "0";
flagDecimal = "0";
});

或者,您可以在文档就绪处理程序 Fiddle 中初始化它

关于javascript - jQuery 实现的计算器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14412821/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com