2016-12-19 27 views
0

我想重複代碼,直到用戶獲得否。對。我該怎麼做呢 ? 這是代碼: -如何重複用戶輸入的代碼?

function getRandomNumber(min,max){ 
    return Math.floor(Math.random()*(max - min + 1))+min; 
} 
randomNumber=(getRandomNumber(1,10)); 

input=prompt("Please enter a no. between 1 and 10:",""); 
if(input==randomNumber){ 
    console.log("Good Work"); 
}else{ 
    console.log("not matched"); 
} 
+0

了'while'環路和'break'可以幫助 –

+0

任何時候,你發現自己用的是「直到」來形容程序流,這意味着你需要使用'而循環或遞歸調用。 – 4castle

+0

'console.log'不返回任何東西。將'randomNumber'直接指定給'getRandomNumber'返回的值。 – 4castle

回答

0

您既可以使用一個while循環調用,一旦用戶輸入正確的答案是「破」的聲明,或者你可以使用這樣的功能:

function getInput(){ 
input=prompt("Please enter a no. between 1 and 10:",""); 
if(input==randomNumber){ 
    console.log("Good Work"); 
}else{ 
    consol.log("not matched"); 
    getInput(); //Gets the user's input again 
} 
} 
0

這裏你去...

找到需要設置爲false之前,你開始,否則函數將只運行一個。在while循環內部有一點功能定義,因爲它將被創建爲一個全局變量。

var found = false; 
 

 
function getRandomNumber(min,max) { return Math.floor(Math.random()*(max - min + 1))+min; } 
 

 
while (found != true) { 
 
\t \t 
 
    \t var randomNumber = getRandomNumber(1,10); 
 

 
\t console.log('Random Number is..',randomNumber); 
 

 
    \t var input = prompt("Please enter a no. between 1 and 10:",""); 
 
    
 
\t if (input == randomNumber) { 
 
\t  alert('Well Done') 
 
\t  found = true; 
 
\t } else { 
 
\t  console.log("not matched"); 
 
\t } 
 
}