Створіть календар
важливість: 4
Напишіть функцію createCalendar(elem, year, month)
.
Виклик повинен створити календар на даний рік/місяць і помістити його в elem
.
Календар має бути таблицею, де тиждень це <tr>
, а день це <td>
. Перший рядок таблиці має бути оформлений як <th>
з назвами днів тижня: першим днем має бути понеділок і так до неділі.
Наприклад, createCalendar(cal, 2012, 9)
має створити в елементі cal
такий календар:
P.S. Для цього завдання достатньо створити календар, який поки що не має бути клікабельним.
Ми створимо таблицю як рядок "<table>...</table>"
, а потім присвоїмо її в innerHTML
.
Алгоритм:
- Створіть заголовок таблиці з
<th>
та днями тижня. - Створіть об’єкт дати
d = new Date(year, month-1)
. Це перший день місяцяmonth
(беручи до уваги, що місяці в JavaScript починаються з0
, а не з1
). - Декілька перших клітинок до
d.getDay()
можуть бути пустими. Заповнимо їх<td></td>
. - Збільшуйте день
d
:d.setDate(d.getDate()+1)
. Якщоd.getMonth()
ще не досяг наступного місяця, тоді додайте нову клітинку<td>
в календар. Якщо це НД, тоді додайте новий рядок“</tr><tr>”
. - Якщо міcяць завершився, але рядок таблиці ще не заповнений, додайте пусті
<td>
, щоб надати таблиці правильної форми.