Как решить проблему «Uncaught TypeError: Невозможно прочитать свойство getFullYear»? - PullRequest
0 голосов
/ 06 августа 2020
<script>
           
           $(function() {
            $('#calculators .date-picker').datepicker({
        changeMonth: true,
        changeYear: true,
        dateFormat: "mm/dd/yy",
        yearRange: "-100:+100"
    });

    $('#weeks-calculator .button').click(function() {
      var $start = $('#start-date').datepicker('getDate');
      var $end = $('#end-date').datepicker('getDate');
      var $days = Math.floor(($end - $start + 1) / (1000 * 60 * 60 * 24));
      var $weeks = $('#weeks').val();
      var $weekDiff = Math.floor(($end - $start + 1) / (1000 * 60 * 60 * 24) / 7);
      var $weeksToDays = $weeks * 7;
      var $endDateString = new Date($start.getFullYear(), $start.getMonth(), $start.getDate() + $weeks * 7);
     // i comment var $endDate = $.datepicker.formatDate('mm/dd/yy',$endDateString);
      var $extraDays = $days % 7;

      //Text Variable for 'Weeks', if Weeks Not Equal to 1
      if ($weekDiff != 1) {var $weeksAnswer = "weeks";}

          //if Weeks Equals exactly 1
          else {var $weeksAnswer = "week";}

      //Text Variable for 'Days', if Days Not Equal to 1
      if ($extraDays != 1) {var $daysAnswer = "days";}

          //if Weeks Equals exactly 1
          else {var $daysAnswer = "day";}

      //Answer Output: Weeks and Days
      if ($end > 0)
          {
              $('#weeks-calculator .answer').html("Answer: " + $weekDiff + " " + $weeksAnswer + ", and " + $extraDays + " " + $daysAnswer + "<br />(Total days: " + $days + ")");

          }
          //Answer Output: End Date
          else
          {
              // Set the new date to the course endDate
              
              $('#weeks-calculator .answer').html("End Date: " + $endDateString + "<br />(Total " + $daysAnswer + ": " + $weeksToDays + ")");
          }

    });

Это код выше, и я снова и снова получаю одну и ту же ошибку. Все остальные функции калькулятора работают, но на этом ничего не вычисляется.

В сообщении об ошибке в консоли постоянно говорится: «Uncaught TypeError: невозможно прочитать свойство getFullYear»

Когда я нажимаю кнопку «Рассчитать», ничего не происходит за пределами этой ошибки в консоли, даже если я введу даты в поля ввода (дата начала и дата окончания).

Любая помощь будет принята с благодарностью. Я в тупике и не уверен, почему это не сработает. Я ни в коем случае не профессионал в JS, поэтому изложить это для меня или иметь какой-то код / ​​способ заставить его работать в пошаговом формате было бы grand.

Спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...