我添加了纽约市,美国时间和日期,但我不知道如何添加当前日期和时间以下的时区。有人知道如何正确地使用html和Java脚本吗
- 美国纽约市
- 英国伦敦安德莱姆
- 阿联酋迪拜
- 澳大利亚悉尼
- 印度孟买
这里是美国纽约市我添加代码部分的时间
html格式
<p class="date_time"><strong id="sec"></strong></p></div>
<div class="dte-fnt "> Wednesday, November 23, 2022 </div>
Java脚本
$(document).ready(function() {
//EST
setInterval( function() {
var estTime = new Date();
var currentDateTimeCentralTimeZone = new Date(estTime.toLocaleString('en-US', { timeZone: 'America/Chicago' }));
var seconds = currentDateTimeCentralTimeZone.getSeconds();
var minutes = currentDateTimeCentralTimeZone.getMinutes();
var hours = currentDateTimeCentralTimeZone.getHours()+1;//new Date().getHours();
var am_pm = currentDateTimeCentralTimeZone.getHours() >= 12 ? "PM" : "AM";
if (hours < 10){
hours = "0" + hours;
}
if (minutes < 10){
minutes = "0" + minutes;
}
if (seconds < 10){
seconds = "0" + seconds;
}
var mid='PM';
if(hours==0){ //At 00 hours we need to show 12 am
hours=12;
}
else if(hours>12)
{
hours=hours%12;
mid='AM';
}
var x3 = hours+':'+minutes+':'+seconds +' '+am_pm
// Add a leading zero to seconds value
$("#sec").html(x3);
},1000);
});
</script>
3条答案
按热度按时间mqkwyuun1#
添加循环
您可以在时区之间循环,并在每个时区中运行现有程序:
您可以删除一些未使用的代码
您正在创建一个变量
mid
,但以后不会使用它。(碰巧您似乎在此变量中向后设置了AM/PM。)因此,您可以删除设置mid
值的行。修复
hours
中的相差一个错误现在你在
hours
上加1,没有什么好的理由。我已经在上面的代码副本中删除了它。在下午早些时候修复
hours
中的格式错误当hours为0到9时,您也会在
hours
的开头加上“0”。您会 later 将hours
以12为模进行约简,以帮助获得12小时制。但是,我认为您执行这些步骤的方式是错误的。如果hours
从(比如)14开始,它不会在开头加上“0”。但是稍后它将经历%12,给予2。然而,这将显示为“2”而不是“02,”因为加0步骤已经通过。我建议将
if (hours == 0)
代码放在var am_pm
和if (hours<10)
之间。重新定位此注解,使其位于相关代码行的上方:
对于实际使用,请使用日期-时间库
我在这里所写的一切只是为了帮助你学习编程。如果你打算在生产中使用它,你最好使用像
moment.js
或luxon.js
这样的库。它们被熟练地维护,并且已经想到了数百个可能发生的日期/时间操作问题,并且巧妙地解决了它们。这个视频很好地解释了为什么创建自己的日期时间处理程序,除了出于好奇心或编程实践之外,是不值得的。
https://www.youtube.com/watch?v=-5wpm-gesOY
kuhbmx9i2#
您可以使用
Date.toLocaleString()
在任何给定的IANA timezone
中显示日期。您可以使用传递给.toLocaleString()函数的选项自订日期格式。
第一个
我还建议看一下
luxon
日期/时间库,它允许将DateTime值转换为任何时区,并允许在输出格式方面有很大的灵活性。第一个
yshpjwxd3#
我强烈建议使用一个库来实现这个功能,因为处理时区和偏移量是相当复杂的。我的建议是使用
moment
及其扩展名moment-timezone
。你必须查看文档来理解它,但一个基本的例子可能是这样的: