为了账号安全,请及时绑定邮箱和手机立即绑定

使用 JavaScript 显示特定时区的实时时间

使用 JavaScript 显示特定时区的实时时间

莫回无 2023-04-14 17:12:38
任何人都可以在下面帮助我。我有显示实时时间的 JavaScript 代码,它需要系统当前时间,但我想显示特定时区(亚洲/达卡)的时间。我怎样才能用这段代码做到这一点?function checkTime(i) {  if (i < 10) {    i = "0" + i;  }  return i;}function startTime() {  var today = new Date();  var h = today.getHours();  var m = today.getMinutes();  var s = today.getSeconds();  // add a zero in front of numbers<10  m = checkTime(m);  s = checkTime(s);  document.getElementById('time').innerHTML = h + ":" + m + ":" + s;  t = setTimeout(function() {    startTime()  }, 500);}startTime();
查看完整描述

3 回答

?
阿晨1998

TA贡献2037条经验 获得超6个赞

function checkTime(i) {

  if (i < 10) {

    i = "0" + i;

  }

  return i;

}


function startTime() {

  var asiaDhaka = new Date().toLocaleString([], { timeZone: "Asia/Dhaka" });

  var today = new Date(asiaDhaka);


  var h = today.getHours();

  var m = today.getMinutes();

  var s = today.getSeconds();

  // add a zero in front of numbers<10

  var isFormat12H = true;

  var ampm = "";

  if (isFormat12H) {

    ampm = h >= 12 ? "pm" : "am";

    h = h % 12;

    h = h ? h : 12;

  }

  m = checkTime(m);

  s = checkTime(s);

  document.getElementById("time").innerHTML = h + ":" + m + ":" + s + ampm;

  t = setTimeout(function () {

    startTime();

  }, 1000);

}

startTime();


查看完整回答
反对 回复 2023-04-14
?
当年话下

TA贡献1890条经验 获得超9个赞

使用Intl.DateTimeFormat API

let options = {

    timeZone: 'Asia/Dhaka',

    year: 'numeric',

    month: 'numeric',

    day: 'numeric',

    hour: 'numeric',

    minute: 'numeric',

    second: 'numeric',

  },

  myDate = new Intl.DateTimeFormat([], options);


setInterval(() => {

  console.log(myDate.format(new Date()));

}, 1000);

您可能需要检查浏览器支持


查看完整回答
反对 回复 2023-04-14
?
桃花长相依

TA贡献1860条经验 获得超8个赞

用这个:

let time = new Date().toLocaleString("en-US", { timeZone: "Asia/Dhaka" });



查看完整回答
反对 回复 2023-04-14
  • 3 回答
  • 0 关注
  • 142 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信