Angularjs Как узнать все даты и дни недели - PullRequest
2 голосов
/ 28 марта 2019

Как получить все даты и дни недели в angularjs

<script>
        function startAndEndOfWeek(date) {
            date = "2019-02-26 00:00:00";   -- passing any date here       
            var now = date ? new Date(date) : new Date();
            now.setHours(0, 0, 0, 0);
            var monday = new Date(now);
            monday.setDate(monday.getDate() - monday.getDay() + 1);
            var sunday = new Date(now);
            sunday.setDate(sunday.getDate() - sunday.getDay() + 7);
            return [monday, sunday];
        }
      //alert(startAndEndOfWeek(new Date(2019, 03, 28)).join('\n'));
        alert(startAndEndOfWeek().join('\n'));
    </script>

Результат: пн 25 февраля 2019 00:00:00 Вс март 201 201 00: 00: 00

Но я хочу, чтобы все даты и дни этой недели были похожи Пн фев 25 Вт 26 фев .. ..

, чтобы я мог привязать его к повторителю, который будет отображать даты и дни в таблице.

<body>
    <div ng-app>
        <div ng-controller="TodoCtrl">
            <!--<div ng-repeat="day in weekDays">  {{day}} </div>-->
            <table ng-repeat="day in weekDays">
                <tr>
                    <td>
                        <label for="lblDay">Date - Day: </label>{{day}}
                    </td>
                </tr>
                </table>
        </div>
    </div>
</body>

1 Ответ

0 голосов
/ 28 марта 2019

Я изменил вашу функцию startAndEndOfWeek

function startAndEndOfWeek(date = "2019-02-26 00:00:00") {
    var now = date ? new Date(date) : new Date();
    now.setHours(0, 0, 0, 0);
    return Array(7).fill('').map((_, i) => {
      var monday = new Date(now);
      monday.setDate(monday.getDate() - monday.getDay() + (i + 1));
      const day = monday.toDateString().split(' ')[0];
      const month = monday.getMonth() + 1;
      const date = monday.getDate();
      return day + ' ' + month + '/' + date;
    });
  }

startAndEndOfWeek("2019-02-26 00:00:00")

не забудьте собрать все даты за неделю

...