如何在不转换为本地时区的情况下保持日期不变

How to keep the Date as it is without being converted into local time zone?

本文关键字:情况下 日期 时区 转换      更新时间:2023-09-26

我在javascript中遇到本地时区问题。如果我从服务器获得的字符串值是"2014-02-03T00:00:00.000Z",一旦我将其传递到 Date 对象 new Date('2014-02-03T00:00:00.000Z'),新的日期对象将位于本地时区,例如 2014 年 2 月 2 日星期日 18:00:00 GMT-0600 (CST)。如何将值保留为"星期一二月03 2014 00:00:00"?我看到很多人正在使用 moment.js 作为交易日期,但我在这个问题上找不到任何帮助。

谢谢

你可以

使用 getUTCDate() 方法。它将返回正确的日期。

http://jsbin.com/zizukapuba/1/edit?output

它会参考系统本地时区将日期转换为所需的格式。

注意:如果您使用 getISOString() 方法,那么它将再次参考您的本地时间(即 GMT -6.00)进行更改。

Date 对象将日期存储为"2014-02-03T00:00:00.000Z"。

显示 Date 对象时,toString() 函数用于获取字符串以显示日期。 toString() 使用本地时区显示日期。尝试使用 toISOString() 函数或 toUTCDateString()。