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

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

為什么結果顯示未定義

var x;

var y,max;

function p(x,y){

if(x>y){

? ?max=x;

}else{

? ?max=y;

? }

}

?

//調用函數,實現下面兩組數中,返回較大值。

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

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


為什么結果卻顯示這個?

5 和 4 的較大值是:undefined
6 和 3 的較大值是:undefined

正在回答

9 回答

函數沒有返回值 是不能被調用或者參與其他表達式的

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

要有返回值的?。?!

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

沒有返回值,在判斷后面應該跟return;將判斷結果返回,方便調用時使用

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

注意一下你輸出的是這個函數p(5,4)的結果,而你在函數內部把結果賦給了max,而沒有返回值,所以顯示undefined

對于這種需要一次函數處理結果的你最好在函數體內返回值,沒必要放在外面的全局變量,而且盡量減少全局變量的濫用

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

函數沒有返回最大的值

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

函數值要返回出來 ,直接賦值是不可以的

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

<!DOCTYPE ?HTML>

<html >

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>函數</title>


<script type="text/javascript">


//定義函數

function asd(x,y){

? ? if(x>y){

? ? ?return x; ?

? ?}else if(x=y){

? ? ?return x,y;?

? ?}else if(x<y){

? ? ?return y;

? ?}

}

//函數體,判斷兩個整數比較的三種情況

//調用函數,實現下面兩組數中,返回較大值。

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

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

</script>

</head>

<body>

</body>

</html>



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

沒有返回值return

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

沒有返回較大值,

return max;

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

舉報

0/150
提交
取消
JavaScript進階篇
  • 參與學習       468832    人
  • 解答問題       22582    個

本課程從如何插入JS代碼開始,帶您進入網頁動態交互世界

進入課程

為什么結果顯示未定義

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

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

幫助反饋 APP下載

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

公眾號

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