亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

求解!為什么沒有加parseInt()函數時,計算相加時,第一個框的數字會被放大10倍呢,從而使結果不正確,但是相減,相乘,相除又是正確的。

<!DOCTYPE html>

<html>

?<head>

? <title> 事件</title> ?

? <script type="text/javascript">

? ?function count(){

? ? var num1,num2,num3,fruit; ?

? ? //獲取第一個輸入框的值

? ? num1 = document.getElementById("txt1").value;

//獲取第二個輸入框的值

? ? num2 = document.getElementById("txt2").value;

//獲取選擇框的值

? ? num3 = document.getElementById("select").value;

//獲取通過下拉框來選擇的值來改變加減乘除的運算法則

? ? //設置結果輸入框的值?

? ? switch(num3){

? ? ? ? case "+":fruit=num1+num2;break;

? ? ? ? case "-":fruit=num1-num2;break;

? ? ? ? case "*":fruit=num1*num2;break;

? ? ? ? case "/":fruit=num1/num2;break;

? ? }

? ? document.getElementById("fruit").value=fruit;

? ?}

? </script>?

?</head>?

?<body>

? ?<input type='text' id='txt1' />?

? ?<select id='select'>

<option value='+'>+</option>

<option value="-">-</option>

<option value="*">*</option>

<option value="/">/</option>

? ?</select>

? ?<input type='text' id='txt2' />?

? ?<input type='button' value=' = ' onclick="count()"/> <!--通過 = 按鈕來調用創建的函數,得到結果-->?

? ?<input type='text' id='fruit' /> ??

?</body>

</html>


正在回答

3 回答

document.getElementById("fruit").value返回值是字符串,若要進行運算,需要使用parseInt()或parseFloat()函數將其進行解析為數值。否則6+6相當于字符串“6”+“6”=“66”,類似于“lo”+"ve"="love"

0 回復 有任何疑惑可以回復我~

怎么看出來放大了十倍? ?你換上字母輸入看看 , ? parseInt()能解析一個字符串,然后再返回一個整數,如果不加這個,只是單純的把兩個字符串放在一起。

2 回復 有任何疑惑可以回復我~
#1

天涯蝶舞 提問者

比如第一個框輸入5,第二個框輸入6,相加的結果卻是56.但是只要加上parseInt()就正確了,為什么呢?
2016-07-09 回復 有任何疑惑可以回復我~
#2

一劍一人 回復 天涯蝶舞 提問者

因為它既是它,也不是它,要成為它就需要證明啊,既是被解析
2016-07-09 回復 有任何疑惑可以回復我~
#3

一劍一人 回復 天涯蝶舞 提問者

弱弱的問一句,你怎么知道哪個是5哪個是6的啊,也是后天被人引導的啊。。。
2016-07-09 回復 有任何疑惑可以回復我~

parseFloat()

0 回復 有任何疑惑可以回復我~
#1

天涯蝶舞 提問者

不使用這個函數,只要保證輸入的都是數字不行么?
2016-07-09 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

求解!為什么沒有加parseInt()函數時,計算相加時,第一個框的數字會被放大10倍呢,從而使結果不正確,但是相減,相乘,相除又是正確的。

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號