d.setDate(0)这是把日设为0,而0比1小,那就是指上一个月的最后一日, 然后 sum += d.getDate() 就是取上一个月的总天数再累加到sum中。
将两个日期转换成毫秒,然后相减,再计算出天数var date1 = new Date('2016/12/31').getTime(),
date2 = new Date().getTime()
var diff = date2 - date1//相差的毫秒数
var day = diff / 1000//相差秒数
day = day / 60//相差分钟数
day = day / 60//相差小时数
day = day / 24//相差天数
简写成
day = diff / 1000 / 60 / 60 / 24
现在这个day可能是小数,因为可能还会多几个小时。可以求下整数:
day = Math.floor(diff / 1000 / 60 / 60 / 24)
算法和逻辑关系,应该都没有正确,问题有二1.isRunNian函数,最后缺少return,没有return,后面调用的时候,在if判断中,应该会报错。
2.按照你写的顺序,在js代码中,定义几个变量,两个函数,但是,缺少调用getdays方法的代码,在最后一行alert中调用一下应该就可以了。