首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >toLocaleString使用的是用户时区还是承载代码的计算机?

toLocaleString使用的是用户时区还是承载代码的计算机?
EN

Stack Overflow用户
提问于 2022-09-10 18:54:58
回答 2查看 117关注 0票数 0

我需要把时间戳转换成人类可读的格式。我希望生成的人类可读的格式是用户的位置(而不是我部署代码的计算机)。

我现在有这样的情况:

代码语言:javascript
复制
let d = 1662835646;
new Date(d * 1000).toLocaleString()

这给了我这个:

代码语言:javascript
复制
9/10/2022, 2:47:26 PM

这对我的时区(EST)是正确的,但我没有办法测试其他时区。

基本上,我要问的是,上面的代码是否能工作到用户可能在世界其他地方的地方,它将显示与他们的位置相关的正确日期。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2022-09-11 20:00:50

基本上,我要问的是,上面的代码是否能工作到用户可能在世界其他地方的地方,它将显示与他们的位置相关的正确日期。

是的,默认情况下,默认的区域设置和时区是代码执行的位置,而不是它所在的位置。这至少对于基于浏览器的JavaScript是正确的,这意味着它将是用户的。对于基于服务器的JavaScript (Node.js等),它将是服务器的,因为这就是执行代码的内容。

..。我没有办法对其他时区进行测试。

是的你知道。您可以更改计算机的时区和语言环境设置,并重新启动浏览器。

或者,如果您使用的是基于铬的浏览器,如Google或Microsoft,您可以在开发工具中的传感器区域中使用更改位置。每个位置都可以为地区和时区定制。

票数 2
EN

Stack Overflow用户

发布于 2022-09-10 19:23:12

函数toLocaleString可以采用两个参数:locale& options

您可以将地区设置为特定的地区,并且使用options参数,您可以设置时区和许多其他选项来格式化日期。

检查以下链接以查看所有可用的选项

Objects/Intl/DateTimeFormat/DateTimeFormat#options

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73674459

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档