gpt4 book ai didi

javascript - 在 javascript 中创建带有时区的当前时间列表

转载 作者:行者123 更新时间:2023-11-30 05:49:33 29 4
gpt4 key购买 nike

如何在 javascript 中创建此列表:

它从 -11 到 +14。

enter image description here

var now = new Date();

给我这个:2013 年 4 月 2 日星期二 20:48:11 GMT+0200(欧洲中部夏令时间)

Tue Apr 02 2013 20:48:11 GMT+0200 就足够了,但使用完整的日名会更好。然后我仍然需要创建一个列表。我可以在 javascript 中创建一个选择选项,例如

var time = document.getElementById('time'); 
time.options[time.options.length] = new Option(value, text);
time.options[time.options.length] = new Option(value, text);

所以我现在只是其中的一部分,但不能把整个事情放在一起。

最佳答案

当使用非 UTC 方法时,您无法更改输出日期的本地时区,因此我们需要作弊。相反,我们将创建不同的日期(在 UTC 中)并假装它们在我们想要枚举的时区中:

var options = [],
dayNames = ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"],
monthNames = ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"];

for (var i=-11; i<=14; i++) {
var d = new Date(); // now
d.setUTCHours(d.getUTCHours() + i); // translate

// format:
var na = dayNames[d.getUTCDay()],
mo = monthNames[d.getUTCMonth()],
da = d.getUTCDate(),
ye = d.getUTCFullYear(),
ho = ("0"+d.getUTCHours()).slice(-2),
mi = ("0"+d.getUTCMinutes()).slice(-2),
of = (i<0?"-":"+")+("0"+Math.abs(i)+"00").slice(-4);
var text = na+", "+mo+" "+da+", "+ye+" - "+ho+":"+mi+" "+of;
options.push(new Option(i, text));
}

关于javascript - 在 javascript 中创建带有时区的当前时间列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15772097/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com