Javascript Do While循环与函数循环混合
我正在为学校写一个简单的程序,遇到了一个问题,我希望有人能帮助我 以下是分配参数: 创建一个小型JavaScript程序,该程序: 创建值为0的变量“total”。 使用do while循环和函数提示用户输入一系列数字,或使用单词quit-quit命令不区分大小写。 如果用户输入一个数字,则将新数字添加到运行总数中。 如果用户输入单词quit,循环应该停止执行。 如果用户输入的不是quit,则提示消息应更改,以让用户知道他们输入了无效的数据类型 退出循环时,显示一条消息,给出输入的总数 我的代码实现了所有赋值参数,但我不知道如何在输入quit命令后让提示消失。结果仍然显示在屏幕上,但提示仍在循环。 这是我的密码:Javascript Do While循环与函数循环混合,javascript,Javascript,我正在为学校写一个简单的程序,遇到了一个问题,我希望有人能帮助我 以下是分配参数: 创建一个小型JavaScript程序,该程序: 创建值为0的变量“total”。 使用do while循环和函数提示用户输入一系列数字,或使用单词quit-quit命令不区分大小写。 如果用户输入一个数字,则将新数字添加到运行总数中。 如果用户输入单词quit,循环应该停止执行。 如果用户输入的不是quit,则提示消息应更改,以让用户知道他们输入了无效的数据类型 退出循环时,显示一条消息,给出输入的总数 我的代码
var inputCounter = 0;
var total = 0;
newInput = null;
quit = /quit/i
function askForNum(a) {
do {
var newInput = prompt(a);
if (!newInput.match(quit)) {
if (newInput < "A" && newInput > "" ) {
var addThis = parseFloat(newInput);
}
if (isNaN(newInput)) {
askForNum("That wasn't a number! type \"quit\" to see the results!");
} else {
total += addThis;
inputCounter++;
askForNum("Every number you enter gets added together! type \"quit\" to see the results!");
}
}
} while (!newInput.match(quit)) {
document.getElementById("addition-script").innerHTML = "<b>TOTAL:</b> " + total + "<br><b># OF ENTRIES:</b> " + inputCounter;
return;
}
}
if (total == 0){
askForNum("initial: Every number you enter gets added together! type \"quit\" to see the results!");
}
您正在从内部递归调用askForNum函数,实际上,每次键入除quit以外的任何内容时,都会在上一个循环中启动一个新的do-while循环。您使用的是两个单独的newinput。while条件检查全局条件,该条件仍然为null。尝试在函数外部声明所有变量,然后不要在函数内部重新声明它们,也就是说,不要再次使用var。您使用的递归是一个调用自身的函数。在您的示例代码中,您需要键入quit,键入次数与键入数字的次数相同。谢谢!这将帮助我重新评估我的方法