首页 > 解决方案 > 明确且有用的时间格式

问题描述

我可以为访问者生成本地格式的时间:

var expires = XXXX
$('#expires').text(new Date(expires).toLocaleTimeString())

例如,这会产生 12:05:46 PM。然而,这对访问者来说是模棱两可的。那是因为我们已经习惯了不正确地计算时区的网站。

制作: 12:05:46 PM EDT 对我来说会更好,而天知道其他人会发生什么。这可能吗?

标签: javascriptdatetimetimezone

解决方案


timeZoneName: 'short'要在输出中获取缩写,请作为选项之一传递。这将适用于支持 ECMAScript 国际化 API (ECMA-402) 的现代浏览器。

var s = new Date().toLocaleTimeString(undefined, { timeZoneName: 'short' });
console.log(s);

在上面,传递undefined区域设置告诉浏览器使用用户当前的区域设置。如果您想要一个特定的语言环境,例如,请en-US改为传递它。

您可以阅读MDN 文档toLocaleTimeString有关该主题的所有选项。


推荐阅读