2013-05-18 70 views
1

嘿,我是JavaScript新手,我只是想知道一些代碼,我從來沒有見過,我只是想知道它是如何工作來練習我的JavaScript我想要的做一個計算器,我在網上得到這個代碼,我只是想知道三件事情。有三件事我不懂這個JavaScript計算器

  1. 代碼如何知道將數字和答案輸出到文本框中。

  2. 這行代碼如何工作? Calc.Input.value我知道Calc的形式是Input就是Input,而value就是輸入的值,比如1 2或3,但是怎麼知道我選擇的輸入是什麼?

  3. Calc.Input.value = eval(Calc.Input.value)究竟做了什麼,它是如何工作的?

感謝您的時間,祝您有個愉快的一天,如果我沒有提供足夠的信息,我會很抱歉。

<FORM NAME="Calc"> 
<TABLE BORDER=4> 
<TR> 
<TD> 
<INPUT TYPE="text" NAME="Input" Size="16"> 
<br> 
</TD> 
</TR> 
<TR> 
<TD> 
<INPUT TYPE="button" NAME="one" VALUE=" 1 " OnClick="Calc.Input.value += '1'"> 
<INPUT TYPE="button" NAME="two" VALUE=" 2 " OnCLick="Calc.Input.value += '2'"> 
<INPUT TYPE="button" NAME="three" VALUE=" 3 " OnClick="Calc.Input.value += '3'"> 
<INPUT TYPE="button" NAME="plus" VALUE=" + " OnClick="Calc.Input.value += ' + '"> 
<br> 
<INPUT TYPE="button" NAME="four" VALUE=" 4 " OnClick="Calc.Input.value += '4'"> 
<INPUT TYPE="button" NAME="five" VALUE=" 5 " OnCLick="Calc.Input.value += '5'"> 
<INPUT TYPE="button" NAME="six" VALUE=" 6 " OnClick="Calc.Input.value += '6'"> 
<INPUT TYPE="button" NAME="minus" VALUE=" - " OnClick="Calc.Input.value += ' - '"> 
<br> 
<INPUT TYPE="button" NAME="seven" VALUE=" 7 " OnClick="Calc.Input.value += '7'"> 
<INPUT TYPE="button" NAME="eight" VALUE=" 8 " OnCLick="Calc.Input.value += '8'"> 
<INPUT TYPE="button" NAME="nine" VALUE=" 9 " OnClick="Calc.Input.value += '9'"> 
<INPUT TYPE="button" NAME="times" VALUE=" x " OnClick="Calc.Input.value += ' * '"> 
<br> 
<INPUT TYPE="button" NAME="clear" VALUE=" c " OnClick="Calc.Input.value = ''"> 
<INPUT TYPE="button" NAME="zero" VALUE=" 0 " OnClick="Calc.Input.value += '0'"> 
<INPUT TYPE="button" NAME="DoIt" VALUE=" = " OnClick="Calc.Input.value = eval(Calc.Input.value)"> 
<INPUT TYPE="button" NAME="div" VALUE="/" OnClick="Calc.Input.value += '/'"> 
<br> 
</TD> 
</TR> 
</TABLE> 
</FORM> 

回答

3
  1. 看到你onClick屬性:如果它的點擊,在onClick執行代碼。輸入的實際值僅通過這些+=(附加到)進行修改。 (如果您當前的輸入是6 +並單擊4,然後4將追加:現在6 + 4是)
  2. Input在這裏也等同於你的第一個輸入的name屬性,這就是爲什麼它的選擇。
  3. eval(Calc.Input.value)正在將您輸入的值解釋爲Javascript。所以當輸入中有4 + 6時,它將被評估爲Javascript並返回10