Javascript 如何正确循环
下面是我需要做的全部工作Javascript 如何正确循环,javascript,loops,input,output,Javascript,Loops,Input,Output,下面是我需要做的全部工作 首先确认用户是否要添加课程,如果他们单击“确定”,则会提示他们输入课程,如果他们单击“取消”,则会完成程序 当用户回答该课程时,他们需要给出该特定课程的分数 完成这两个问题后,需要返回询问他们是否想再次添加课程 这就是我目前所拥有的 while(true){ var entering=confirm('是否要输入课程?'); 如果(输入=真){ 打破 } } var codeInput=''; var gradeInput=''; while(true){ codeI
while(true){
var entering=confirm('是否要输入课程?');
如果(输入=真){
打破
}
}
var codeInput='';
var gradeInput='';
while(true){
codeInput=提示(“输入课程代码”);
if(codeInput.length==7){
打破
}
警报(“无效代码”);
}
gradeInput=提示符('输入'+codeInput+''的等级);
书面文件(“”);
书面文件(“”);
书面文件(“课程代码”);
书面文件(“等级”);
书面文件(“”);
书面文件(“”)+
代码输入+
'');
书面文件(“”)+
分级输入+
'');
书面文件(“”)代码>根据此处
如果用户单击“取消”按钮,此函数将返回null
所以,您只需检查值是否为null,就可以知道用户是否单击了“取消”
if (codeInput == null) break
将代码封装在函数中,以便在每次输入grad再次询问时调用它
我建议创建表和标题,然后在用户回答提示时追加行:
var行数=0;
var table=document.createElement('table');
table.border='1';
问();
函数ask(){
var codeInput='';
var gradeInput='';
var entering=confirm('是否要输入课程?');
如果(!输入){
返回;
}否则{
while(true){
codeInput=提示(“输入课程代码”);
if(codeInput.length==7){
打破
}
警报(“无效代码”);
}
}
gradeInput=提示符('输入'+codeInput+''的等级);
if(行数=0){
var行=document.createElement('tr');
var th_1=document.createElement('th');
var th_2=document.createElement('th');
var txt_1=document.createTextNode(“课程代码”);
var txt_2=document.createTextNode(“等级”);
th_1.appendChild(txt_1);
th_2.appendChild(txt_2);
第1行。附加子项(第1行);
第2行(第2行);
表2.追加子项(行);
行数++;
}
console.log(行数);
表=插入行(代码输入、等级输入);
document.body.appendChild(表);
行数++;
问();
}
函数insertRow(codeInput、gradeInput){
var行=document.createElement('tr');
var td_1=document.createElement('td');
var td_2=document.createElement('td');
var txt_1=document.createTextNode(codeInput);
var txt_2=document.createTextNode(gradeInput);
td_1.appendChild(txt_1);
td_2.appendChild(txt_2);
第1行:附加子行(td_1);
第2行(td_2);
表2.追加子项(行);
返回表;
}
你可以在这里使用递归,而不是在while循环中使用它们。我还没有学会递归,所以我需要使用while循环或任何类型的循环。非常感谢你的帮助,我非常感谢,但我忘了在我的问题中提到的一件事是,它必须在所有javascript中完成,没有html。出于某种原因,它在这里运行,但当我把它放在我的文本编辑器中并在firefox中打开它时,它会启动良好,但当我进入课程的分数时,而不是问我是否要输入另一个不会弹出的分数,我什么都做不了桌子也没有出现。我看了看firefox的控制台,它告诉我这个“document.body为null”,这是“document.body.appendChild(table);”行的意思,所以不确定这是什么意思。我想我已经解决了这个问题,我在第一个ask()之前使用了“window.onload=function()”,它似乎可以工作。非常感谢你,你帮了我大忙!干得好,很高兴我能帮忙。快乐编码。