将JavaScript日期格式设置为小时:分钟:秒

Jam*_*mes 2 javascript jquery

我有这个代码,我不能第二次正确格式化:

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);
Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

My Time:
<div id="local-time"></div>
Their time:
<div id="remote-time"></div>
Run Code Online (Sandbox Code Playgroud)

local-time 是完美的,显示"hh:mm:ss"

remote-time 只显示一个随机数列表.

我怎么能做remote-time"hh:mm:ss"呢?

Pau*_*oub 6

你得到它的字符串表示remote 你正在调整,所以这对你没有好处.

然后你显示的结果setHours()(自1970年1月1日以来的毫秒)而不是字符串.

这就是我认为你的目标:

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;  
}
Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

My Time:
<div id="local-time"></div>
Their time:
<div id="remote-time"></div>
Run Code Online (Sandbox Code Playgroud)