第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

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

在document.write里直接調(diào)用函數(shù)的問題

?? ?? document.write(cloc()+"--班級總分為:" + num + "<br>");

為什么這樣寫函數(shù)后會多個undefined呢?

這是代碼:

function cloc() {
????? var todays = new Date();
?? ?? var year = todays.getFullYear();
?? ?? var mon = todays.getMonth()+1;
?? ?? var day = todays.getDate();
?? ?? var week = ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"];
?? ?? var today = todays.getDay();
?? ?? document.write(year + '年' + mon + '月' + day + '日' + week[today]);
?}
?? ?? var scoreStr = "小明:87;小花:81;小紅:97;小天:76;小張:74;小小:94;小西:90;小伍:76;小迪:64;小曼:76";
?? ?? var score = scoreStr.split(";");
?? ?? var num = 0;
??? for (var i=0; i< score.length; i++) {?? ?//循環(huán)score數(shù)組 ??? ??? ??? ? ??? ?
?? ??? ??? ?num += parseInt(score[i].substr(score[i].indexOf(":")+1));
?? ??? ?? }
?? ??? ?? cloc();
?? ?? document.write("--班級總分為:" + num + "<br>");
?? ??? ?? cloc();
?? ?? document.write("--班級平均分:" + Math.round(num/score.length));

正在回答

3 回答

看不懂你加這個 cloc() 有什么用

看我的代碼

<!DOCTYPE ?HTML>

<html >

<head>

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

<title>系好安全帶,準(zhǔn)備啟航</title>


<script type="text/javascript">


? //通過javascript的日期對象來得到當(dāng)前的日期,并輸出。

? var aaa = new Date();

? var bbb = new Array(["日"],["一"],["二"],["三"],["四"],["五"],["六"]);

? document.write(aaa.getFullYear()+"年"+(aaa.getMonth()+1)+"月"+aaa.getDate()+"日 星期"+bbb[aaa.getDay()]+"<br />");

??

? //成績是一長竄的字符串不好處理,找規(guī)律后分割放到數(shù)組里更好操作哦

? var scoreStr = "小明:87;小花:81;小紅:97;小天:76;小張:74;小小:94;小西:90;小伍:76;小迪:64;小曼:76";

? var ccc = new Array;

? var ddd = new Array;

? var sum = 0;

? ccc = scoreStr.split(";");

? for(i=0;i<ccc.length;i++){

? ? ddd[i] = ccc[i].split(":");

? ? sum += parseInt(ddd[i][1]);

? ? document.write(i+" "+ddd[i][0]+" "+ddd[i][1]+"<br />");

? }

??

? document.write("--班級共"+ccc.length+"人 總分為:"+sum+" 平均分為:"+Math.floor(sum/ccc.length));

? //從數(shù)組中將成績撮出來,然后求和取整,并輸出。

??



</script>

</head>

<body>

</body>

</html>


0 回復(fù) 有任何疑惑可以回復(fù)我~
#1

LY_1124 提問者

……包裝個函數(shù)直接調(diào)用多方便……
2016-04-18 回復(fù) 有任何疑惑可以回復(fù)我~
#2

慕粉3168198 回復(fù) LY_1124 提問者

我試了一下,應(yīng)該是函數(shù)都是默認(rèn)要返回一個值的,也就是return 的值,如果沒有,估計會默認(rèn)加一個空值 試驗1: document.write(year + '年' + mon + '月' + day + '日' + week[today]); return 1; //會返回 1 試驗2: var a = document.write(year + '年' + mon + '月' + day + '日' + week[today]); return a; //這樣還是會出現(xiàn)undefined,估計是這樣嵌套會出bug 另,本例中,你寫了一個根本不需要的函數(shù)
2016-04-18 回復(fù) 有任何疑惑可以回復(fù)我~
#3

慕粉3168198 回復(fù) 慕粉3168198

實驗3: var a = year + '年' + mon + '月' + day + '日' + week[today]; return a; 分析: 用document.write(cloc()+"--班級總分為:" + num + "<br>");調(diào)用的時候函數(shù)里先執(zhí)行了document.write ,然后返回值默認(rèn)為空,所以出現(xiàn)了 undefined 所以去掉函數(shù)里面的 document.write ,直接把日期結(jié)果字符串返回,就沒有問題了。
2016-04-18 回復(fù) 有任何疑惑可以回復(fù)我~
#4

LY_1124 提問者 回復(fù) 慕粉3168198

根據(jù)你的回答,我弄明白是怎么回事了,謝謝~ 但我堅持這種包裝函數(shù)的寫法,以便以后養(yǎng)成好的習(xí)慣 是默認(rèn)返回值與document.write的沖突,只要改成這樣 var cc = year + '年' + mon + '月' + day + '日' + week[today]; return cc; 再調(diào)用函數(shù)時就不會有bug了
2016-04-18 回復(fù) 有任何疑惑可以回復(fù)我~
#5

LY_1124 提問者 回復(fù) 慕粉3168198

是的,是這問題,我剛才自己也試出來了。謝謝
2016-04-18 回復(fù) 有任何疑惑可以回復(fù)我~
查看2條回復(fù)

cloc() ?是什么,里面應(yīng)該有問題。

0 回復(fù) 有任何疑惑可以回復(fù)我~
#1

LY_1124 提問者

代碼貼上了,幫忙看看是為什么呢
2016-04-18 回復(fù) 有任何疑惑可以回復(fù)我~

這種寫法是沒問題的,有可能是cloc()的函數(shù)中有錯誤,當(dāng)然沒看到你的代碼是不能直接下判斷的。我也是小白~

0 回復(fù) 有任何疑惑可以回復(fù)我~

舉報

0/150
提交
取消

在document.write里直接調(diào)用函數(shù)的問題

我要回答 關(guān)注問題
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號