Как переделать календарь JS, чтобы на экран выводились все месяцы года одновременно?

<body>
  <div class="container"></div>
  <script>
    function createCalendar (elem,year,month) {
     elem = document.querySelector(elem)
     let mon = month-1;
     let d = new Date (year,mon);
     let table =`
     <table>
      <caption><b>${month}.${year}</b></caption>
      <tr>
        <th>пн</th>
        <th>вт</th>
        <th>ср</th>
        <th>чт</th>
        <th>пт</th>
        <th>сб</th>
        <th>вск</th>
        </tr>
      <tr>`;
        for(let i=0; i<getDay(d); i++){
          table += '<td></td>'
        }
        while(d.getMonth() == mon){
          table += '<td>' + d.getDate() + '</td>'
          if(getDay(d) % 7 == 6){
            table += '</tr><tr>'
          }
          d.setDate(d.getDate()+1)
        }
        if(getDay(d)!=0){
          for(let i=getDay(d);i<7; i++){
          table += '<td></td>'
        } 
        }
        table += '</tr></table>';
        elem.innerHTML = table;
    }

    function getDay(date){
      let day = date.getDay()
      if(day == 0){
        day = 7 ;
      }
      return day-1
    }
    createCalendar ('body',2023,01) 

  </script>
</body>

</html>

Ответы (0 шт):