我正在使用JavaScript构建一个计算器,并希望阻止用户按下NaN(例如分割,加上等,即仅先按一个数字)并防止Nan被按下两次,例如不允许分割两次。我怎么能这样做?
这是我的代码:
var result = ""; //must be a string so it concatenates rather than adds
function calc(digit){
if (digit == "ans"){
var prevResult = result;
result = prevResult;
$("#resultBox").append("Ans");
}
else if (digit == "sum"){
$("#resultBox").val(eval(result));
}
else if (digit == "clear"){
location.reload();
}
else{
result += digit;
$("#resultBox").val(result);
}
}
这是我的HTML中几个按钮的示例:
<button class="large" type="button" value="divide"onclick=calc("/")>/</button>
<button class="small" type="button" value="1" onclick=calc(1)>1</button>
答案 0 :(得分:0)
将第一个部分更改为
else if (digit == "sum"){
if ( result.length > 0 )
{
$("#resultBox").val(eval(result));
}
}
同样,对于除以及加号,检查最后一个字符是否为数字
if ( result.length > 0 && !isNaN(result.slice(-1) )
{
result += digit;
}