JSFiddle - React, Tailwind, and code Playground
by Joe Saad
JavaScript
function getIncrement(year, month) {
let date = new Date('' + year + '-' + month + '-1');
// console.log('date: ',date.getDay())
let increment = date.getDay() > 0 ? date.getDay() - 2 : 5;
return increment;
}
function getDate(week, dayWeek,
year, month, increment) {
let date;
let day = week * 7 + dayWeek - increment;
if (day <= 0) {
let fechaAuxiliar = new Date('' + year + '-' + month + '-1');
date = new Date(fechaAuxiliar.getTime() + ((day - 1) * 24 * 60 * 60 * 1000));
} else {
date = new Date('' + year + '-' + month + '-' + day);
if (isNaN(date.getTime())) {
let fechaAuxiliar = new Date('' + year + '-' + month + '-1');
date = new Date(fechaAuxiliar.getTime() + ((day + 1 - increment) * 24 * 60 * 60 * 1000));
}
return date;
}
}
console.log(getIncrement(2019, 2))
console.log(getDate(2, 4, 2019, 1, 3));