date madness

by J. Jones

HTML

<p id="demo">Click the button to display the full year of todays date.</p>
    <p id="demo2">todays date.</p>
    <p id="demo3">some other date.</p>

    <button onclick="showdates()">Try it</button>

JavaScript

function showdates() {
       var d = Date.now();
       var dv = document.getElementById('demo');
       dv.innerHTML = d;
       var pd = prettyDate(d);
       dv = document.getElementById('demo2');
       dv.innerHTML = pd;
       var ts = prettyDateToTimeStamp(pd);
       dv = document.getElementById('demo3');
       dv.innerHTML = ts;
    }

        function prettyDate(javaScriptTimeStamp) {
          var dt = new Date(javaScriptTimeStamp);
          var year    = dt.getFullYear();
          var month   = dt.getMonth() + 1;
          var day     = dt.getDate();
          var hours = dt.getHours();
          var minutes = dt.getMinutes();
          var seconds = dt.getSeconds();
          return month + "/" + day + "/" + year + " " + hours + ":" + minutes + ":" + seconds;
       }

       function prettyDateToTimeStamp(prettyDate) {
          var halves = prettyDate.split(' ');
          console.log("halves: " + halves);
          var calpart = halves[0];
          console.log("calpart : " + calpart );
          var clockpart = halves[1];
          console.log("clockpart : " + clockpart );
          var calbits = calpart.split('/');
          console.log("calbits : " + calbits );
          var timebits = clockpart.split(':');
          console.log("timebits : " + timebits );
          var year = parseInt(calbits[2],10);
          console.log("year : " + year );
          var month = parseInt(calbits[0],10);
          console.log("month : " + month );
          var day = parseInt(calbits[1],10);
          console.log("day : " + day );
          var hour = parseInt(timebits[0],10);
          console.log("hour : " + hour );
          var min = parseInt(timebits[1],10);
          console.log("min : " + min );
          var sec = parseInt(timebits[2],10);
          console.log("sec : " + sec );
          month += 3; // change month radically to demonstrate the problem
          console.log("month is now: " + month );
          day += 7; // change day too
         ...