如何从停止循环的提示中显示条目

问题描述 投票:0回答:1

我正在尝试制作一个页面:

  • 询问用户的姓名并在页面上显示用户名
  • 询问用户1到9之间的数字,并显示该数字的乘法表
  • 如果用户输入此范围之外的数字,则发送带有错误消息的警报
  • 重复,直到得到所需范围内的数字

但是,在乘法表的文档中写入的数字仍然是输入到提示框中的第一个数字,即使它不在1到9之间。

var greetingString = "Your name is ";
var myName = prompt("What is your name?", "");
    document.write(greetingString + myName + ".", "<br/>");
    document.write("<br/>");


var number = prompt("Enter a number:", "");

for(index = 1; index <= 9; index = index + 1) {
    document.write(number+ "*" +index+ "=" +number*index+ "<br/>");
}

while(true) {
    if(number<=0 || number>=10) {
    alert("Error!");
    number = prompt("Enter a number:", "");
    } else {
        break;
    }
}
document.write("<br/>");

我期待循环继续,直到我输入1到9之间的数字,但我希望1到9之间的数字在乘法表的文档中。

javascript loops for-loop while-loop var
1个回答
1
投票

您需要在打印表之前放置循环。

您还可以将初始提示放在循环中,这样您就不必再写两次。

var greetingString = "Your name is ";
var myName = prompt("What is your name?", "");
document.write(greetingString + myName + ".", "<br/>");
document.write("<br/>");

while (true) {
  var number = prompt("Enter a number:", "");
  if (number <= 0 || number >= 10) {
    alert("Error!");
  } else {
    break;
  }
}

for (index = 1; index <= 9; index = index + 1) {
  document.write(number + "*" + index + "=" + number * index + "<br/>");
}

document.write("<br/>");
© www.soinside.com 2019 - 2024. All rights reserved.