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

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

為什么結果這樣顯示?

5 5和4的較大值是:undefined

6 6和3的較大值是:undefined

正在回答

5 回答

因為JS會先執行在前面的函數里面的document.write(),如果你不想提前輸出最大值,必須用return對函數結果進行處理。

<script type="text/javascript">

function infos(a,b){

if(a>b){

? ? return a;

}else if(a<b){

? ? return b;

}else{

? ? return a;

}

}

var res1=infos(5,4);

res2=infos(3,6);

?document.write(" 5 和 4 的較大值是:"+res1+"<br>");

?document.write(" 6 和 3 的較大值是:" +res2);?

</script>


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

等待Mr薰衣草 提問者

get....蟹蟹!
2016-04-10 回復 有任何疑惑可以回復我~

因為document.write()是網頁向文檔輸出數據 而用ruturn是返回當前結果 而你document.write(x)輸出的只有一個x?當然會undefined啦

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

應該是你比較的函數寫錯了。

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

你是不是在function中的return后邊沒有寫返回值?所以才會顯示undefined

像下邊這樣?

if(x>y)

?return ;

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

等待Mr薰衣草 提問者

用document.write()輸出比較值時會出現這個問題,最后改成用return返回,結果正常了。
2016-04-09 回復 有任何疑惑可以回復我~

好歹把代碼掛上啊。。。

這樣顯示大概是因為你比較的 不是int而是字符串,或者你比較的函數寫錯了

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

等待Mr薰衣草 提問者

用document.write()返回比較值會這樣,換成return就好了。都是返回最大值,但是為什么會這樣啊。。
2016-04-09 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

為什么結果這樣顯示?

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

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

幫助反饋 APP下載

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

公眾號

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