Sunday, May 19, 2024
 Popular · Latest · Hot · Upcoming
94
rated 0 times [  97] [ 3]  / answers: 1 / hits: 16273  / 12 Years ago, mon, july 9, 2012, 12:00:00

I have some friends' birthdays and want to separate them as follows :




  • birthdays which fall within the current week (within remaining days of current week starting from current day).

  • birthdays which fall within the current month (within remaining days of current month starting from current day).

  • birthdays which fall within the next month.



So all I want to know how to test each date in javascript to see if it falls within the remaining days of the current week/current month/next month.



N.B: say I have those dates in m/d/Y(06/29/1990) format.



Thanks


More From » jquery

 Answers
1

Convert your date and current time to Date object and use it for comparison. Some dry coding:



var now = new Date()
if (
(check.getFullYear() == now.getFullYear()) &&
(check.getMonth() == now.getMonth()) &&
(check.getDate() >= now.getDate())
) {
// remanining days in current month and today. Use > if you don't need today.
}

var nextMonth = now.getMonth() + 1
var nextYear = now.getFullYear()
if (nextMonth == 12) {
nextMonth = 0
nextYear++
}
if (
(check.getFullYear() == nextYear) &&
(check.getMonth() == nextMonth)
) {
// any day in next month. Doesn't include current month remaining days.
}

var now = new Date()
now.setHours(12)
now.setMinutes(0)
now.setSeconds(0)
now.setMilliseconds(0)
var end_of_week = new Date(now.getTime() + (6 - now.getDay()) * 24*60*60*1000 )
end_of_week.setHours(23)
end_of_week.setMinutes(59)
end_of_week.setSeconds(59) // gee, bye-bye leap second
if ( check >=now && check <= end_of_week) {
// between now and end of week
}

[#84387] Friday, July 6, 2012, 12 Years  [reply] [flag answer]
Only authorized users can answer the question. Please sign in first, or register a free account.
jocelynkarsynr

Total Points: 472
Total Questions: 98
Total Answers: 96

Location: Macau
Member since Mon, Nov 16, 2020
4 Years ago
;