小刘同学的第十八篇博文

有点晚了,不知不觉就到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[▓▓] 晚安……

posted @ 2018-01-10 23:33  小刘-  阅读(197)  评论(0编辑  收藏  举报