最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

jquery - Format JavaScript Date as Hours:Minutes:Seconds - Stack Overflow

programmeradmin0浏览0评论

I have this code and I cannot get the second time to format properly:

setInterval(function() {
  var local = new Date();
  var localdatetime = local.getHours() + ":" + local.getMinutes() + ":" + local.getSeconds();

  var remote = new Date();
  var remotedatetime = remote.getHours() + ":" + remote.getMinutes() + ":" + remote.getSeconds();

  var remoteoffset = remote.setHours(local.getHours() - 5);

  $('#local-time').html(localdatetime);
  $('#remote-time').html(remoteoffset);
}, 1000);
<script src=".1.1/jquery.min.js"></script>

My Time:
<div id="local-time"></div>
Their time:
<div id="remote-time"></div>

I have this code and I cannot get the second time to format properly:

setInterval(function() {
  var local = new Date();
  var localdatetime = local.getHours() + ":" + local.getMinutes() + ":" + local.getSeconds();

  var remote = new Date();
  var remotedatetime = remote.getHours() + ":" + remote.getMinutes() + ":" + remote.getSeconds();

  var remoteoffset = remote.setHours(local.getHours() - 5);

  $('#local-time').html(localdatetime);
  $('#remote-time').html(remoteoffset);
}, 1000);
<script src="https://ajax.googleapis./ajax/libs/jquery/2.1.1/jquery.min.js"></script>

My Time:
<div id="local-time"></div>
Their time:
<div id="remote-time"></div>

local-time is perfect and displays "hh:mm:ss"

remote-time just displays a list of random numbers.

How can I make remote-time "hh:mm:ss", too?

Share Improve this question edited Nov 21, 2017 at 14:43 Paul Roub 36.5k27 gold badges86 silver badges95 bronze badges asked Aug 22, 2013 at 21:39 JamesJames 9404 gold badges15 silver badges28 bronze badges 3
  • remoteoffset.toString() ? – Bart Calixto Commented Aug 22, 2013 at 21:44
  • You'll never deal with all the possible timezones like this, use UTC – Paul S. Commented Aug 22, 2013 at 21:44
  • "remote-time just displays a list of random numbers." - They're not random, they're just not the format you were expecting. Notice you never use the remotedatetime variable after you set it to the formatted value? – nnnnnn Commented Aug 22, 2013 at 21:47
Add a ment  | 

2 Answers 2

Reset to default 6

You're adjusting remote after getting its string representation, so that's doing you no good.

Then you're displaying the result of setHours() (milliseconds since January 1, 1970) rather than the string.

This is what I think you're aiming for:

setInterval(function() {
  var local = new Date();
  var localdatetime = local.getHours() + ":" + pad(local.getMinutes()) + ":" + pad(local.getSeconds());

  var remote = new Date();
  remote.setHours(local.getHours() - 5);
  var remotedatetime = remote.getHours() + ":" + pad(remote.getMinutes()) + ":" + pad(remote.getSeconds());

  $('#local-time').html(localdatetime);
  $('#remote-time').html(remotedatetime);
}, 1000);

function pad(t) {
  var st = "" + t;
  
  while (st.length < 2)
    st = "0" + st;
    
  return st;  
}
<script src="https://ajax.googleapis./ajax/libs/jquery/2.1.1/jquery.min.js"></script>

My Time:
<div id="local-time"></div>
Their time:
<div id="remote-time"></div>

setInterval(function() {
    var local = new Date();
    var localdatetime = local.getHours() + ":" + local.getMinutes() + ":" + local.getSeconds();

    var remote = new Date();
    remote.setHours(local.getHours() - 5);
    var remotedatetime = remote.getHours() + ":" + remote.getMinutes() + ":" + remote.getSeconds();

    $('#local-time').html(localdatetime);
    $('#remote-time').html(remotedatetime);
},1000);
发布评论

评论列表(0)

  1. 暂无评论