我正在为学校写一个简单的程序并遇到问题,我希望有人可以帮助我
这些是作业参数:
创建一个小型JavaScript程序:
- 创建一个变量' total'值为0.
- 使用do-while循环&用于提示用户输入一系列数字的功能,或者单词" 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!");
}
答案 0 :(得分:1)
您正在从内部调用askForNum函数(递归),实际上每次键入除&#34; quit&#34;之外的任何内容时,在前一个内部启动一个新的do-while循环。