js实现日历中,一般界面上会显示当前月,然后点击按钮,需要显示上个月和下个月,因此获得展示页的月份的天数是其中很重要的一小步。
面试回来看到大概看了很多段代码,就目前看到的,大概核心都是用的js获取当前日期中的一个小操作。
<pre name="code" class="html">//获取某月的最后一天
var myDate=new Date();
var myyear=myDate.getFullYear();
var mymonth=myDate.getMonth()+1;
function getLastDay(myyear,mymonth){
var new_date=new Date(myyear,mymonth,0);
return new_date.getDate();
}
其中最关键的一步就是:new Date(xxxx,xx,0/1)这步操作,如果你传入的是0,那么获得的是上一个月的最后一天,然后getDate(),就可以得到上一个月的天数,因此getMonth()+1,就可以得到当前月的天数,同理下一个月的天数也可以获得。如果传入的是1,那么获得就是这个月的第一天,alert后显示的是格林尼治5月1号的时候,如果用1的话,getTime()再减去1000*60*60*24也是可以的哈,不过就太冗余了。
不知道还有没有更好的办法啊,求告知啊~~~被面的这么惨,真是不忍直视啊,回来把面到的东西过一遍吧hhhhhhh周围没有比我惨的了233333
最后,顺便把js关于获取当前日期时间的操作过一遍吧:
var myDate = new Date();
myDate.getYear();
myDate.getFullYear();
myDate.getMonth();
myDate.getDate();
myDate.getDay();
myDate.getTime();
myDate.getHours();
myDate.getMinutes();
myDate.getSeconds();
myDate.getMilliseconds();
myDate.toLocaleDateString();
var mytime=myDate.toLocaleTimeString();
myDate.toLocaleString( );