주말을 제외하고 매월 매일 연결된 개체 배열을 만들어야합니다. 예 : 월요일 -1, 화요일 -2, 수요일 -3, 목요일 -4, 금요일 -5, 월요일 -8 등. // 2 일 점프
이 조각 이 내 아이디어에 매우 유용하다는 것을 알았습니다 .
암호:
function getDaysArray(year, month) {
var numDaysInMonth, daysInWeek, daysIndex, index, i, l, daysArray;
numDaysInMonth = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
daysInWeek = ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'];
daysIndex = {
'Sun': 0,
'Mon': 1,
'Tue': 2,
'Wed': 3,
'Thu': 4,
'Fri': 5,
'Sat': 6
};
index = daysIndex[(new Date(year, month - 1, 1)).toString().split(' ')[0]];
daysArray = [];
for (i = 0, l = numDaysInMonth[month - 1]; i < l; i++) {
if (daysInWeek[index++] == "Sunday" || daysInWeek[index++] == "Saturday") {
continue; //I tried: no success.
}
daysArray.push({
"title": "Turn",
"resourceid": "4",
"start": year + "-" + month + "-" + (i + 1) + "+" + "08:00:00",
"end": year + "-" + month + "-" + (i + 1) + "+" + "14:00:00",
"internals": ground[i] // people from array to assign at specific date
});
if (index == 7) index = 0;
}
return daysArray;
}
console.log(getDaysArray(2019, 12));
더 쉬움 : index
변수를 사용하십시오 . 0 또는 6과 같으면 주말이므로 하루를 밀지 마십시오.
function getDaysArray(year, month) {
var numDaysInMonth, daysInWeek, daysIndex, index, i, l, daysArray;
numDaysInMonth = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
daysInWeek = ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'];
daysIndex = { 'Sun': 0, 'Mon': 1, 'Tue': 2, 'Wed': 3, 'Thu': 4, 'Fri': 5, 'Sat': 6 };
index = daysIndex[(new Date(year, month - 1, 1)).toString().split(' ')[0]];
daysArray = [];
for (i = 0, l = numDaysInMonth[month - 1]; i < l; i++) {
if (index != 0 && index != 6) {
daysArray.push({
"title":"Turn",
"resourceid":"4",
"start":year+"-"+month+"-"+(i + 1)+"+"+"08:00:00",
"end":year+"-"+month+"-"+(i + 1)+"+"+"14:00:00"
});
}
index++;
if (index == 7) index = 0;
}
return daysArray;
}
console.log(getDaysArray(2019, 12));
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다