JavaScript: IF/ELSE和隨機數


約瑟 發表



在這單元我們將用到隨機數來介紹 IF/ELSE

If/Else 讓程式知道當狀況是正確或錯誤該做什麼動作。所以, 你將可用IF/ELSE來幫助你控制整個程式。



STEP1:【程式範例】
  1. 以下是這個範例的程式碼:

    <HTML>
    <HEAD>
    <SCRIPT LANGUAGE="JavaScript">
    function rand()
    {now=new Date()
    num=(now.getSeconds())%10
    num=num+1
    }
    function guessnum()
    {guess=prompt("Your guess?")
    if (eval(guess) == num)
    {alert("答對了!!")
    rand()
    }
    else
    alert("錯了, 在試試看.")
    }
    </SCRIPT>
    </HEAD>
    <BODY onLoad="rand()">

    <h2>現在電腦已經選好1-10其中一個數字, 猜看看吧!</h1>

    <FORM NAME="myform">

    <INPUT TYPE="button" VALUE="Guess"
    NAME="b1" onClick="guessnum()">

    </FORM>
    </BODY>
    </HTML>

  2. 按一下右邊的連結去看顯示結果: 按這裡


STEP2:【程式說明】
  1. 我們先從 BODY 裡面看:

    <body bgcolor="white" onLoad="rand()">

    這次我們不是用onClick指令來呼叫function, 我們是用onLoad來呼叫。我們這樣做是因為程式才能在我們 進入網頁前就先選好一個隨機數。要是我們沒這麼做的話, 我們每按一次button, 隨機數就會更新一遍, 這樣不是更難猜中不是嗎?
  2. 現在我們來談第一個function:

    function rand()
    {now=new Date()
    num=(now.getSeconds())%10
    num=num+1
    }

    這個function是隨機數的function。我們上一章節有講到這段語法。(按這去上一章節)
  3. 現在是第二個function:

    function guessnum()
    {guess=prompt("Your guess?")
    if (eval(guess) == num)
    {alert("答對了!!")
    rand()
    }
    else
    alert("錯了, 在試試看.")
    }

    這是一種聰明的寫法, 再我們還沒執行第二個function前, 隨機數已經被記憶在瀏覽器裡面了。 讓我們看看運作過程:
  4. guess這個variable是被 prompt() 這個指令做出來的。有點 像上一章的做法。
  5. 接下來我們就進去If/Else。
  6. 接下來, 假如(If) "guess" 這個variable是等於隨機數, 就會有一個aler()跑出來說 "你答對了!!"。
  7. 假如不是(Else)呢? 程式就重新跑一遍。
  8. 最後就是button的語法, 大家應該都知道吧~! 就是去呼叫function的功能。

    最後更新日期: 7/9/2001 10:35:47 AM