使用 JavaScript 获取当前周的星期日
Get the Sunday of the Current Week using JavaScript
要获取当前周的星期日:
- 计算当月的星期一的第几天。
- 将结果加 6。
- 使用该
setDate()
方法获取当前周星期日的时间戳。 - 将结果传递给
Date()
构造函数。
索引.js
function getSundayOfCurrentWeek() { const today = new Date(); const first = today.getDate() - today.getDay() + 1; const last = first + 6; const sunday = new Date(today.setDate(last)); return sunday; } // (today is Mon Jan 17 2022) // 👇️ Sun Jan 23 2022 console.log(getSundayOfCurrentWeek());
getDate方法返回一个介于 1 和 31 之间的
整数,表示给定日期是一个月中的第几天。
getDay方法返回一个介于 0(星期日)和 6(星期六)之间的
整数,表示日期是星期几。
我们从月份中的某天减去星期几,然后将结果与结果相加,得到当月星期一的第几天。
1
我们必须添加1
,因为该getDay
方法是零索引的,并且将星期日视为一周的第一天。
6
然后,我们通过与结果相加得到当前星期日的月中日期
。
setDate方法将
月中的日期作为参数,更改
Date
调用它的值并返回 1970 年 1 月 1 日与给定日期之间的毫秒数。
我们直接将时间戳传递给
Date()
构造函数以存储当前星期日的日期。
您可以使用此方法获取当前一周中的任何一天。
下面是一个记录本周星期一值的示例。
索引.js
function getSundayOfCurrentWeek() { const today = new Date(); const first = today.getDate() - today.getDay() + 1; const last = first + 6; const monday = new Date(today.setDate(first)); console.log(monday); // 👉️ Mon Jan 17 2022 const sunday = new Date(today.setDate(last)); return sunday; } // (today is Mon Jan 17 2022) // 👇️ Sun Jan 23 2022 console.log(getSundayOfCurrentWeek());
我们使用相同的方法来获取当前星期一的日期。
如果您需要获取当前的星期二,您可以添加
2
而不是1
从当月的某天减去星期几。