【发布时间】:2019-09-25 11:20:09
【问题描述】:
我目前正在使用 Javascript 编写计算器。被点击的按钮被存储在 Stack 中。 例如,我们点击“54”、“+”、“23”。那应该是77,对吧? 所以现在我的堆栈显示这个 ["54", "+", "23", "=", ""] 我希望堆栈的结果如下: [“54”、“+”、“23”、“=”、“”、“77”] 如果您也知道如何在 Stack 中删除空字符串,那就太好了。
const value = event.target.value;
if(isNaN(parseInt(value, 10)))
{
stack.push(value)
stack.push('')
} else if(stack.length > 0)
{
stack[stack.length - 1] += '' + value;
}
if (prevop == '=') {
document.getElementById("textfield").value = "";
}
prevop = value;
我正在尝试实现她下面的逻辑以获得我想要的结果。
var sum = 0;
var stackLength = stack.length;
for(var i = 0; i < stackLength; i++)
{
sum = sum + stack.pop();
stack.push(sum);
}
【问题讨论】:
标签: javascript arrays stack