2014-10-04 57 views
0

我想寫一個非常簡單的JS程序。我希望它能生成1到100之間的10個隨機數,並顯示其中有多少是偶數,有多少是奇數。我一直在尋找所有,我找不到爲什麼這不起作用。它顯示0個偶數和10個奇數,無論組合如何。我忽略了什麼?這偶數/奇怪的Javascript有什麼問題?

function main() 
{ 
    var number = 0; 
    var totalNumbers = 0; 
    var evenNumbers = 0; 
    var oddNumbers = 0; 

    document.write("Here are ten random numbers between 1 and 100:<br><br>"); 

    while(totalNumbers < 10) 
    { 
     number = document.write((Math.floor((Math.random()* 100)+1)) + "<br>");  

     if(number % 2 == 0) 
     { 
      evenNumbers++; 
     } 
     else 
     { 
      oddNumbers++; 
     } 

     totalNumbers++; 
    } 

    document.write("<br><br>Even Numbers: " + evenNumbers + "<br>" + 
        "Odd Numbers: " + oddNumbers); 
} 
+5

每次我看到'document.write'我都想在裏面哭。 – 2014-10-04 18:11:41

+0

提示:如果您不熟悉特定的方法,請首先閱讀其關於MDN的文檔:https://developer.mozilla.org/en-US/docs/Web/API/document.write。或者甚至在SO上搜索它:https://stackoverflow.com/questions/13741584/what-does-document-write-do – 2014-10-04 18:17:43

回答

10

document.write()不返回一個數字。在撥打document.write()之前,請將號碼存儲在變量中。

while(totalNumbers < 10) 
{ 
    var number = Math.floor((Math.random()* 100)+1; 
    document.write(number + "<br>");  

    if(number % 2 == 0) 
    { 
     evenNumbers++; 
    } 
    else 
    { 
     oddNumbers++; 
    } 

    totalNumbers++; 
} 
+0

非常感謝!顯然還在學習基礎知識!工作正是我想要的:) – musikluver2003 2014-10-04 18:11:40