我正在尝试获取与我的位置相关的时间。根据我所在国家的时间,我住的地方是格林尼治标准时间+5。但当我在firebase cloud函数中使用以下代码时,它总是给我GMT+0时间。
const time = new Date();
const currentTime = time.toLocaleString('en-US', {
hour: 'numeric',
minute: 'numeric',
hour12: true
})
如果我在任何网站的控制台中使用上述代码,它都会给我正确的时间。即GMT+5。有人知道如何根据我所在的地区获得正确的时间吗?
您的代码看起来是正确的。
如果你的firebase云功能在云中运行,那么它可能不是在与你位于同一时区的计算机上运行的,因此存在时区差异。
如果你想让firebase云功能获取发送请求的用户的时区,你必须将时区或日期作为请求的一部分,而不是在云功能中计算。