gpt4 book ai didi

JavaScript Date对象在另一个时区,如何渲染办公时间?

转载 作者:行者123 更新时间:2023-11-28 04:24:35 26 4
gpt4 key购买 nike

这看起来相当微不足道,但我可能想得太多了。

我想在周一至周五上午 9 点(太平洋标准时间)和下午 5 点(太平洋标准时间)之间渲染我的聊天小部件

使用new Date()始终将时间放入浏览器时区。基本上我需要实例化 PST 中的日期并检查是否在天和小时之间。

var d = new Date();
var day = d.getDay();
var hour = d.getHours();

if (day > 0 && day < 6 && hour > 9 && hour < 17) {
renderChatWidget($('#chat-widget')):
}

我认为这是不正确的,因为它使用浏览器时间,因此如果伦敦上午 9:30,那么 PST 时间将类似于凌晨 2 点,并且它仍然会呈现聊天小部件...

最佳答案

function calcTime(city, offset) {
// create Date object for current location
var d = new Date();

// convert to msec
// subtract local time zone offset
// get UTC time in msec
var utc = d.getTime() + (d.getTimezoneOffset() * 60000);

// create new Date object for different city
// using supplied offset
var nd = new Date(utc + (3600000*offset));

// return time as a string
return "The local time for "+ city +" is "+ nd.toLocaleString();
}

document.getElementById('title').innerHTML=(calcTime('California', '-7'));
<h1 id="title">Time Zone Example</h1>

这是来自这个post我只是把它变成了一个片段来看看它的工作原理。然后,您可以使用正确的时区通过测试来使用修改后的(正确的)日期。

关于JavaScript Date对象在另一个时区,如何渲染办公时间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45172670/

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