有點晚了,不知不覺就到11點了,今天比昨天狀態更好些了,不過期末考試就快來了,夜深人靜的時候就想著或許自己應該成熟一點,而不是每天還在走神什麼之類的…… homework5終於是寫完了,一個簡單的日曆系統。。。 在寫的過程中,發現之前很多學的基礎都忘記了,所以也是在看過老師寫了一遍之後,自己才能把這 ...
有點晚了,不知不覺就到11點了,今天比昨天狀態更好些了,不過期末考試就快來了,夜深人靜的時候就想著或許自己應該成熟一點,而不是每天還在走神什麼之類的……
homework5終於是寫完了,一個簡單的日曆系統。。。
在寫的過程中,發現之前很多學的基礎都忘記了,所以也是在看過老師寫了一遍之後,自己才能把這個日曆完整的寫出來。
基本上沒有被卡住的地方,可能是都差不多看老師講的時候,都已經把代碼記下來了,所以今天晚上寫起來有點點不爽,沒有經過自己太多的思考,有點像是直接抄了。
for (var i = 1; i <= days; i++) {
str += i + "\t";
if ( (i + week - 1) % 7 === 0) {//隔七天換行,但是要-1 不然對不齊
str += "\n";
}
}
就是這裡這個控制換行的地方稍微有點小麻煩,需要考慮到-1,因為如果用日期和星期數直接相加,得到的數會多一天,換行的時候就會少一天,其實大概的邏輯也不是很清晰,反正得到的結果就是會提前一天換行,格式不對。
還有發現了一個老師遺漏的bug,我改過來了。
1 if (week == 0) { //attention: getDay()周日 返回的值不是7 而是0
2 str = "\t\t\t\t\t\t";
3 }else{
4 for (var i = 1; i < week; i++) {
5 str += "\t";
6 }
7 }
getDay()周日 返回的值不是7 而是0,其實老師可能也沒註意到這一層。
不加這個if的話,最後的結果就是前面的\t完全沒有用了,單純只用for迴圈的話,getDay()在周日返回的是0,所以會導致沒有\t來控制格式,1號周日,反而會被排到周一那一天去。。
其他沒什麼好說的,以後時間多儘量自己思考了,實在想不出再去看老師的代碼吧,這樣直接抄,除了快一點,真的對自己沒好處。
朋友們,(¦3[▓▓] 晚安……