JavaScript实现获取指定月份中的休息日
项目场景:
在实际开发中要求获取到指定月份的休息日(这里指的休息日是双休不包括法定节假日)。
功能描述
项目的实际场景:
页面中年(year)、月(month),在实际需求中可以由用户自行选择,这里方便为了演示将其指定当前时间年月;
首先获取当前年月,再计算当前月有多少天
// 构建一个可以将yyyy-yy-yy类型字符串转换为date类型的function
function stringToDate(dateString) {dateString = dateString.split('-');return new Date(dateString[0], dateString[1] - 1, dateString[2]);}
// 获取当前年月var date = new Date();var year = date.getFullYear();var month = date.getMonth() + 1;
// 计算当前月有多少天var startDate = Date(year,parseInt(month),1)var endDate = Date(year,month+1,1)var days = (endDate - startDate)/(1000*60*60*24)
// 设置月初、月末时间var MonthStart = year + '-' + month + '-' + '01'var MonthOver = year + '-' + month + '-' + days
// 将月初月末时间转换为日期类型MonthStart = stringToDate(MonthStart)MonthOver = stringtoDate(MonthOver)
// 定义一天的毫秒数为baseTimevar baseTime = 1000 * 60 * 60 * 24;
// 定义一个空数组用来存储休息日var restData = []while((MonthStart.getTime() - MonthOver.getTime()) >= 0 ) {if(MonthStart.getDay() == 6 || MonthStart.getDay() == 0){restData.push(MonthStart)}MonthStart = new Date(MonthStart.getTime() + baseTime) }
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
