Md Moniruzzaman
Md Moniruzzaman

Reputation: 1

How to i add 24 hours to 12 hours timestamp with AM and PM?

I made below code for getting real time. but i don't understand, how to i add timestamp 24 hours to 12 hours and AM PM.

setInterval(function() {
  var date = new Date();
  var hours = date.getHours();
  var seconds = date.getSeconds();
  var minutes = date.getMinutes();
  var realTime = (hours < 10 ? '0' : '') + hours + ':' + (minutes < 10 ? '0' : '') + minutes + ':' + (seconds < 10 ? '0' : '') + seconds
  $('#time').html(realTime);
}, 1000);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="time"></div>

Upvotes: 0

Views: 208

Answers (3)

Lucas G.
Lucas G.

Reputation: 1

setInterval(function() {
  var date = new Date();
  var hours = date.getHours();
  var seconds = date.getSeconds();
  var minutes = date.getMinutes();
  if (hours > 12){hours = hours -12; amPM = ' PM'}else{amPM = ' AM'}
  var realTime = (hours < 10 ? '0' : '') + hours + ':' + (minutes < 10 ? '0' : '') + minutes + ':' + (seconds < 10 ? '0' : '') + seconds + amPM
  $('#time').html(realTime);
}, 1000);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="time"></div>

Upvotes: 0

gurvinder372
gurvinder372

Reputation: 68413

You can follow this approach (comments inline)

setInterval(function() {
  var date = new Date();
  var hours = date.getHours();
  var seconds = ("0" + date.getSeconds()).slice(-2);
  var minutes = ("0" + date.getMinutes()).slice(-2);
  var amPM = hours < 12 ? "AM": "PM"; //decides if this is AM or PM based on hours value
  hours = ("0" + (hours % 12)).slice(-2); //pad 0 prefix 
  var realTime = hours + ':' + minutes + ':' + seconds + " " + amPM; //prepare the date format
  $('#time').html(realTime);
}, 1000);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="time"></div>

Upvotes: 2

Omaim
Omaim

Reputation: 234

setInterval(function() {
  var now = moment().format("hh:mm:ss a");
  $('#time').html(now);
}, 1000);
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.19.2/moment.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="time"></div>

You can use momentjs and format using format("hh:mm:ss a")

Upvotes: 2

Related Questions