使用 javascript 将 GMT 转换为 IST(印度标准时间)?

Shu*_*eth 2 javascript timezone date utc pst

我有一个日期格式是 GMT 或 UTC。

var mydate  = '2020-01-14T17:43:37.000Z'

Run Code Online (Sandbox Code Playgroud)

我想以IST格式转换这个日期,所以根据这个日期我需要这种格式的输出。

var date = '2020-Jan-15 12:45'


Run Code Online (Sandbox Code Playgroud)

Mat*_*int 8

您可以在传递给 的选项中指定 IANA 时区标识符toLocaleString。印度的标识符是Asia/Kolkata

var s = new Date('2020-01-14T17:43:37.000Z').toLocaleString(undefined, {timeZone: 'Asia/Kolkata'});
Run Code Online (Sandbox Code Playgroud)

这将进行正确的时区转换,因为输入是 UTC(如Z末尾指定的)。

undefined表示使用用户的语言环境来格式化日期和时间。这通常是您想要的。如果您想要更特殊的格式(如您在问题中指定的格式),您可以提供特定的语言环境字符串和/或调整 的其他选项toLocaleString,如文档中所述

另请注意,您问题中的转换不正确。印度与 UTC 相差 5 小时 30 分钟。因此正确的输出是2020-01-14 23:13:37 (以您喜欢的任何格式)