JS获取月份最后天数、最大天数与某日周数的方法

时间:2021-05-26

本文实例讲述了JS获取月份最后天数、最大天数与某日周数的方法。分享给大家供大家参考,具体如下:

<html xmlns="http://www.w3.org/1999/xhtml"><head><title>标题页</title><script language="javascript">function getLastDay(year,month){ var new_year = year; //取当前的年份 var new_month = month++;//取下一个月的第一天,方便计算(最后一天不固定) if(month>12) //如果当前大于12月,则年份转到下一年 { new_month -=12; //月份减 new_year++; //年份增 } var newnew_date = new Date(new_year,new_month,1);//取当年当月中的第一天 return (new Date(new_date.getTime()-1000*60*60*24)).getDate();//获取当月最后一天日期}</script><body> <input id="Button1" type="button" value="取2007年5月的最后一天" onClick="alert(getLastDay(2007,5))" /></body></html>

js得到一个月最大天数

JS里 面的new Date("xxxx/xx/xx")这个日期的构造方法有一个妙处,
当你传入的是"xxxx/xx/0"(0号)的话,得到的日期是"xx"月的前一个 月的最后一天("xx"月的最大取值是69,题外话),
当你传入的是"xxxx/xx/1"(1号)的话,得到的日期是"xx"月的后一个 月的第一天(自己理解)
如果传入"1999/13/0",会得到"1998/12/31"。而且最大的好处是当你传入"xxxx/3/0",会得到xxxx年2月的最后一天,它会自动判断当年是否是闰年来返回28或29,不用自己判断,
所以,我们想得到选择年选择月有多少天的话,只需要

var temp=new Date("选择年/选择月+1/0");return temp.getDate()//最大天数

校验的话,也可以用这个方法。

下面是使用JS编写的获取某年某月有多少天的getDaysInMonth(year, month)方法:

function getDaysInMonth(year,month){ month = parseInt(month,10)+1; var temp = new Date(year+"/"+month+"/0"); return temp.getDate();}

js 获取某年的某天是第几周

/** * 判断年份是否为润年 * * @param {Number} year */function isLeapYear(year) { return (year % 400 == 0) || (year % 4 == 0 && year % 100 != 0);}/** * 获取某一年份的某一月份的天数 * * @param {Number} year * @param {Number} month */function getMonthDays(year, month) { return [31, null, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31][month] || (isLeapYear(year) ? 29 : 28);} /** * 获取某年的某天是第几周 * @param {Number} y * @param {Number} m * @param {Number} d * @returns {Number} */function getWeekNumber(y, m, d) { var now = new Date(y, m - 1, d), year = now.getFullYear(), month = now.getMonth(), days = now.getDate(); //那一天是那一年中的第多少天 for (var i = 0; i < month; i++) { days += getMonthDays(year, i); } //那一年第一天是星期几 var yearFirstDay = new Date(year, 0, 1).getDay() || 7; var week = null; if (yearFirstDay == 1) { week = Math.ceil(days / yearFirstDay); } else { days -= (7 - yearFirstDay + 1); week = Math.ceil(days / 7) + 1; } return week;}

希望本文所述对大家JavaScript程序设计有所帮助。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章