簡體   English   中英

為什么我的while循環使用if語句不能正常工作?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM