function isLeapYear(year) {
return (year % 4 === 0) && ((year % 100 !== 0) || (year % 400 === 0));
}
function getDayOfYear(year, month, day) {
// cumulative days at the end of each month (non-leap year)
const days = [0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334];
if (isLeapYear(year) && month > 2) {
return days[month - 1] + day + 1;
}
return days[month - 1] + day;
}
const dayOfYear = getDayOfYear(2023, 5, 15);
console.log(dayOfYear);
/*
run:
135
*/