求,JS计算日期!
输入参数:年份,第几周。
返回参数:该周起始月日。
比如:
输入参数 年份2012 ,第2周。
返回参数 1月8日 到 1月14日
求实现上述功能的函数。
[解决办法]
第一周和最后一周怎么算?下面的代码只包括当年的日期。如果需要包括前一年/后一年的日期,稍微修改一下也不难
function getStartDateByWeek(year, week) { var startDate = new Date(); startDate.setFullYear(year, 0, 1); //变态的js月份从0开始 var dayOfWeek = startDate.getDay(); var count = 0; var weekCount = 1; if (weekCount === week) { return startDate; } else { while (weekCount !== week) { startDate.setDate(startDate.getDate() + 7); weekCount++; } while (dayOfWeek > 0) { startDate.setDate(startDate.getDate() - 1); dayOfWeek = startDate.getDay(); } } return startDate; }