[英]Why does my while loop with an if statement not work properly?
我正在嘗試用Java腳本編寫一個待辦事項列表,其中提示將詢問用戶他們想做什么,然后用戶有3個選項,“新建”以添加新元素或“列表”以檢查元素已經添加或“退出”退出循環。
我試圖通過更改分號的位置來更改語法,但這只會導致永無休止的循環,從而使筆記本電腦崩潰!
var todo=[];
var answer=prompt("what do you want to do?");
while (answer!=="quit") {
if (answer=="list") {
console.log(todo);
}
else if (answer="new") {
var newtodo=prompt("what do you want to add?");
todo.push(newtodo);
}
}
alert("ok we're done here");
當我打開腳本所附的HTML文件時,第一個提示按預期出現,當我鍵入“ quit”時,它按預期退出循環並顯示警報,但是當我鍵入“ new”時,它一直在問我什么您要添加嗎? 不管我鍵入什么,它都永無止境。 另外,當我輸入列表時,它總是問我你想添加什么,即使它應該列出我的數組。 我認為我在語法上犯了一個錯誤,但我不知道該怎么辦。
這里的問題是,在while循環之前, 您只提示一次 。
修復:在片刻結束時,再次提示:
var answer=prompt("what do you want to do?");
while (answer!=="quit") {
if (answer=="list") {
console.log(todo);
}
else if (answer=="new") { //plus here it's '==', not '='
var newtodo=prompt("what do you want to add?");
todo.push(newtodo);
}
answer=prompt("what do you want to do?");
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.