宝慕林2422576
2016-08-18 09:58
如下:这段代码的日期的月份会少1,该怎么调整
<script type="text/javascript"> var mydate=new Date(); var weekday=["星期日","星期一","星期二","星期三","星期四","星期五","星期六"]; document.write("今天是:" +mydate.getFullYear()+"年"+mydate.getMonth()+"月"+ mydate.getHours()+"日"+ weekday[mydate.getDay()] ); </script>
首先,getMonth()获得值和getDay一样是从0开始的数值,所以你的mydate.getMonth()+"月"应该改成(mydate.getMonth()+1)+"月"。
然后获取日期不是getHours(),而是getDate(),getHours()是获取时间,所以你的日期这里应该改成mydate.getDate()+"日" 。
总的来说你改成这样就可以了
<script type="text/javascript">
var mydate=new Date();
var weekday=["星期日","星期一","星期二","星期三","星期四","星期五","星期六"];
document.write("今天是:" +mydate.getFullYear()+"年"+(mydate.getMonth()+1)+"月"+ mydate.getDate()+"日"+ weekday[mydate.getDay()]+"<br>" );
</script>
直接输出的月份,正确写法要记得把整体括起来,比如:(mydaye.getMonth()+1)+"月";如果不用括号,mydate.getMonth+1+"月";会是直接在数字后添一;比如mydate.getMonth()是9;前者就会是10;而后者就会是91
getMonths()获得值和getDay一样 也是0-11的数值,1月份对应的是0,8月份对应的是7,以此类推,所以要得到正确的月份的话需要在getMonths()之后+1
var dd=new Date(); var y=dd.getFullYear(); var m=dd.getMonth()+1; var d=dd.getDate(); var week=new Array("日","一","二","三","四","五","六"); document.write(y+"年"+m+"月"+d+"日"+"星期"+week[dd.getDay()]);
<script type="text/javascript"> var mydate=new Date(); var weekday=["星期日","星期一","星期二","星期三","星期四","星期五","星期六"]; document.write("今天是:" +mydate.getFullYear()+"年"+(mydate.getMonth()+1)+"月"+ mydate.getDate()+"日"+ weekday[mydate.getDay()] ); </script>
getMonth()取得的月份分别是0-11,所以要加1,还有你的mydate.getHours()+"日"错了。如上代码。
<script type="text/javascript"> var myDate = new Date(); var weekDays = ["星期日","星期一","星期二","星期三","星期四","星期五","星期六",]; document.write(myDate.getFullYear() + "年" + myDate.getMonth() + "月" + myDate.getDay() + "日" + weekDays[myDate.getDay()]); </script>
document.write("今天是:" +mydate.getFullYear()+"年"+(mydate.getMonth()+1)+"月"+ mydate.getHours()+"日"+ weekday[mydate.getDay()] );
JavaScript进阶篇
468728 学习 · 22064 问题
相似问题