[英]Get start and end of week with the start on Monday and end on Sunday in Javascript
[英]start week day from sunday - javascript
我想通過提供特定周的天數來檢索日期
例如
當我說
day: 1
它應該為我提供:
2023-01-15
到目前為止我嘗試過的是:
function calculatedDate (day){ let date = new Date(); let dayAtDate = date.getDay(); let dayDiff = day - dayAtDate; if(dayDiff < 0){ dayDiff = 7 + dayDiff; } let desiredDate = date.setDate(date.getDate() + dayDiff); return new Date(desiredDate); } console.log(calculatedDate(1));
現在上面代碼的問題是它認為day: 1
是星期一,但我希望day: 1
在這里是星期日。
任何人都可以在這里以最好的方式幫助我嗎?
周日為 0,周一為 1:
function calculatedDate (day) { let date = new Date(); let dayAtDate = date.getDay(); let dayDiff = day - (dayAtDate + 1); // change here if (dayDiff < 0) { dayDiff = 7 + dayDiff; } let desiredDate = date.setDate(date.getDate() + dayDiff); return new Date(desiredDate); } console.log(calculatedDate(1));
在提供的那一天只 -1 怎么樣? 那應該解決它:
function calculatedDate (day){ let date = new Date(); let dayAtDate = date.getDay(); day = day - 1; let dayDiff = day - dayAtDate; if(dayDiff < 0){ dayDiff = 7 + dayDiff; } let desiredDate = date.setDate(date.getDate() + dayDiff); return new Date(desiredDate); } console.log(calculatedDate(1));
您可能希望在輸入參數day
上添加一些驗證,確保它是一個數字且大於或等於 1。
當前日期將為 0,通過進行以下更改來說明這一點。
if(dayDiff < 0){
dayDiff = 6 + dayDiff;
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.