猿问

JS获取当前周从星期一到星期天的日期

需求:根据当天日期,获得所在周的所有日期,比如(2018-01-21)那么这一周的日期是:
['2018-01-15',...'2018-01-21'],要支持跨年,跨月。
注:星期一为一周的开始,星期天为结束

我现在写的这个方法,遇到星期日时返回的就错了。变成下周的了。求大神给个方法。


qq_笑_17
浏览 7658回答 2
2回答

白猪掌柜的

供参考const dateOfToday = Date.now()const dayOfToday = (new Date().getDay() + 7 - 1) % 7const daysOfThisWeek = Array.from(new Array(7))  .map((_, i) => {    const date = new Date(dateOfToday + (i - dayOfToday) * 1000 * 60 * 60 * 24)    return date.getFullYear() +      '-' +      String(date.getMonth() + 1).padStart(2, '0') +      '-' +      String(date.getDate()).padStart(2, '0')  })

米脂

function getDates(currentTime) {//JS获取当前周从星期一到星期天的日期&nbsp; &nbsp; var currentDate = new Date(currentTime)&nbsp; &nbsp; var timesStamp = currentDate.getTime();&nbsp; &nbsp; var currenDay = currentDate.getDay();&nbsp; &nbsp; var dates = [];&nbsp; &nbsp; for (var i = 0; i < 7; i++) {&nbsp; &nbsp; &nbsp; &nbsp; dates.push(new Date(timesStamp + 24 * 60 * 60 * 1000 * (i - (currenDay + 6) % 7)).toLocaleDateString().replace(/\//g, '-'));&nbsp; &nbsp; }&nbsp; &nbsp; return dates}
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答