[英]How to make the week days start at monday instead of sunday in javascript please?
[英]How to create an array of numbers of the days of the week (i.e. 0 for sunday, 1 for monday, etc.) 7 days from current date in javascript?
標題可能令人困惑,所以我將在這里進一步解釋。 我希望創建一個數組,其中包含每天的星期幾,例如,從當前日期起 2-7 天。 給出的起始數字只是一個 0-6 的整數,對應於一周中的天數。
示例 1:
星期幾:0(星期日)
輸出: [2, 3, 4, 5, 6, 0, 1]
示例 2:
星期幾:3(星期三)
輸出: [5, 6, 0, 1, 2, 3, 4]
這樣做的用途是將這些數字轉換為日期的實際名稱,並使用它們來顯示一些數據。
要獲取天數數組,您可以使用以下函數
function getDays(num) {
const arr = [];
for (let i = 2; i <= 8; i++) {
arr.push((num + i) % 7);
}
return arr;
}
並且要得到一個數字對應的日期,你可以使用這個函數
function getDay(num) {
const days = ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'];
return days[num];
}
結合這兩個以獲得所需的結果
const days = getDays(0); // [2, 3, 4, 5, 6, 0, 1];
const displayNames = days.map(getDay); // ["Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday", "Monday"]
首先,你需要今天的索引:
const date = new Date(); const todayIndex = date.getDay(); console.log(todayIndex);
然后,您可以將今天的索引添加到 0-7 范圍內的每個數字 - 並使用模運算符確保您保持在此范圍內:
const todayIndex = new Date().getDay(); const ans = [...Array(7).keys()].map(x => (x + todayIndex) % 7); console.log({ todayIndex, ans });
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.