I’ve written script for both current month & following month (shown below). However, I am trying to achieve something in the middle; displaying the current month until the 15th day, then changing to next month after the 15th day.
Example: If today is July 10th, display “July”. If today is July 20th, display “August”.
Displaying the Current Month, alternating: “var n = month[d.getMonth()];”
{ var month = new Array(); month[0] = "January"; month[1] = "February"; month[2] = "March"; month[3] = "April"; month[4] = "May"; month[5] = "June"; month[6] = "July"; month[7] = "August"; month[8] = "September"; month[9] = "October"; month[10] = "November"; month[11] = "December"; var d = new Date(); var n = month[d.getMonth()]; document.write (month = n) }
Displaying the Following Month, alternating: “var n = month[d.getMonth()+1];”
{ var month = new Array(); month[0] = "January"; month[1] = "February"; month[2] = "March"; month[3] = "April"; month[4] = "May"; month[5] = "June"; month[6] = "July"; month[7] = "August"; month[8] = "September"; month[9] = "October"; month[10] = "November"; month[11] = "December"; var d = new Date(); var n = month[d.getMonth()+1]; document.write (month = n) }
I’ve experimented with values in between the 0-1, but still no luck. I haven’t managed to find a solution after a lot of research so any help would be much appreciated.
Thanks in advance, Ryan.
Advertisement
Answer
You can get the day of the month with new Date().getDate()
. Then, if it is more than 15, add 1 to the month index to return.
Also, I rewrote your months array in a simple form instead of month[0] = "January";
{ var month = ["January","February","March","April","May","June","July","August","September","October","November","December"] var d = new Date(); var dayOfMonth = d.getDate(); var n = month[ d.getMonth() + (dayOfMonth > 15 ? 1 : 0) ]; document.write ("month = " + n) }