0

I have a script that prints the current date and time in JavaScript, but when it prints time, it's missing one 0. Here is the code:

    var currentdate = new Date();
    var datetime = "0" + currentdate.getDate() + ".0"
    + (currentdate.getMonth()+1) + "." 
    + currentdate.getFullYear() + "   "
    + currentdate.getHours() + ":"
    + currentdate.getMinutes();
    document.write(datetime);

It should print 04.03.2016 15:04 and prints 04.03.2016 15:4.

Two digit minutes print fine.

Any leads?

Vertexwahn
  • 7,709
  • 6
  • 64
  • 90
belvedere
  • 47
  • 1
  • 5
  • I think solution from [here](http://stackoverflow.com/questions/3605214/javascript-add-leading-zeroes-to-date) will work for you – potato Mar 04 '16 at 14:38

1 Answers1

1

Try this

var formatDateDigit = function (i) {
      return i <= 9 ? ("0" + i) : i;
    };
    
var currentdate = new Date();

var datetime = formatDateDigit(currentdate.getDate()) + "."
  + formatDateDigit(currentdate.getMonth()+1) + "." 
  + currentdate.getFullYear() + " &nbsp; "
  + formatDateDigit(currentdate.getHours()) + ":"
  + formatDateDigit(currentdate.getMinutes());

document.getElementById('my_output_here').innerHTML = datetime;
<div id="my_output_here"></div>
Ammar Hasan
  • 2,436
  • 16
  • 22