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

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

為什么不能用document.write輸出一定要用return,而且顯示結果是這種樣子:

為什么不能用document.write輸出一定要用return,而且顯示結果是這種樣子:

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


<script type="text/javascript">


//定義函數

function comp(a,b){

? ? ? ? if(a>b){

? ? ? ? ? ? ?document.write(a);

? ? ? ? }

? ? ? ? else if(a == b){

? ? ? ? ? ? ?document.write(a);

? ? ? ? }

? ? ? ? else{

? ? ? ? ? ?document.write(b);

? ? ? ? }

? ? ? ??

? ? }

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

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

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


</script>


正在回答

3 回答

document.write() 賦值 哪里 說錯了?

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

document.write()只是輸出的作用,你需要給document.write()賦值這樣才會有效果,例如:var p = document.write(); 這樣也是可以輸出的。 理解的我習慣拿java去理解 ,p是一個對象,document.write()相當于這個對象說的一句話,如果你不把這句話賦予一個人的話,就不知道是誰說的所有理解不來為undefined(相當于不知道是誰說的),return 是有兩種作用,第一返回當前的值,相當于會把你所做的一個公式的最后結果 (=)等號出來,第二個作用是 : 在這個函數中? 當運行到return時候 這個函數結束了 ,當前函數運行結束,不管下面還有沒有 代碼,所有 運用的時候 要注意這點 ,想好在哪里 寫return 。 語言方法和屬性 一定要 是 對象 才擁有的 ,要不然就會理解不聊的 。

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

gir1ike 提問者

Q1//函數返回值返回到哪里了 調用函數的地方 類似comp() 意思就是返回值返回到了這里嗎 ? Q2//類似這種為什么能夠輸出正確,這里面也沒返回值啊 function add2(x,y) { sum = x + y; document.write(sum); }
2016-02-05 回復 有任何疑惑可以回復我~

你沒有明白“document.write()”語句的作用。

在函數里使用這條語句。函數執行完之后是沒有返回值的,所以comp()執行完之后是啥結果都沒有的,為undefined。

簡單地說:document.write這語句在函數里就被“消化”掉了,“渣”都沒有。

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

gir1ike 提問者

Q1//函數返回值返回到哪里了 調用函數的地方 類似comp() 意思就是返回值返回到了這里嗎 ? Q2//類似這種為什么能夠輸出正確,這里面也沒返回值啊 function add2(x,y) { sum = x + y; document.write(sum); }
2016-02-05 回復 有任何疑惑可以回復我~
#2

碼喵 回復 gir1ike 提問者

很簡單的例子:var a = add2(1,2)。不考慮其他,a的值必定為undefined,因為add2沒有返回值,執行完后是沒東西的,但是因為里面的document.write()已經被執行過一次了,就會有輸出。如果在add2里面加入“return sum;”的話,a的值就是sum,因為add2返回了這個值,而var a接收(被賦值)了。
2016-02-16 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

為什么不能用document.write輸出一定要用return,而且顯示結果是這種樣子:

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

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

幫助反饋 APP下載

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

公眾號

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