当前位置: 首页 > 面试题库 >

解析日期而不带时区javascript

仉昱
2023-03-14
问题内容

我想在JavaScript中解析没有时区的日期。我努力了:

new Date(Date.parse("2005-07-08T00:00:00+0000"));

返回时间:2005年7月8日星期五, 格林尼治标准时间 +0200 (欧洲中部夏令时间)

new Date(Date.parse("2005-07-08 00:00:00 GMT+0000"));

返回相同的结果

new Date(Date.parse("2005-07-08 00:00:00 GMT-0000"));

返回相同的结果

我想解析时间:

  1. 没有时区。

  2. 无需调用构造函数Date.UTC或新的Date(年,月,日)。

  3. 只需将字符串简单地传递到Date构造函数即可(无需原型方法)。

  4. 我必须提供Date对象,而不是String


问题答案:

日期已正确解析,只是toString会将其转换为您的本地时区:

let s = "2005-07-08T11:22:33+0000";

let d = new Date(Date.parse(s));



// this logs for me

// "Fri Jul 08 2005 13:22:33 GMT+0200 (Central European Summer Time)"

// and something else for you



console.log(d.toString())



// this logs

// Fri, 08 Jul 2005 11:22:33 GMT

// for everyone



console.log(d.toUTCString())

Javascript Date对象是时间戳-
自时代起它们仅包含毫秒数。Date对象中没有时区信息。此时间戳表示哪个日历日期(天,分钟,秒)取决于解释(to...String方法之一)。

上面的示例显示日期已正确解析-也就是说,它实际上包含与GMT中的“ 2005-07-08T11:22:33”相对应的毫秒数。



 类似资料:
  • 我想在JavaScript中解析没有时区的日期。我试过:

  • 我正在尝试在中解析这些日期,然后获取表示形式。 我阅读了这个类似的答案,并创建了一个方法来解析上述日期并返回具有所需格式的: 然而,没有一个图案是匹配的。我这里缺少什么? 更新:在这两个日期中,我都收到了字符的异常。

  • 我想从格式为“2021-12-10T18:49:00-05:00”的字符串中解析带有时区的日期。我尝试使用“date('Y-m-dh:I:s',strotime($myDate))”进行解析。但这是第二天的返回日期。非常感谢您的帮助。

  • 问题内容: 我有两个时间戳,它们以两种不同的格式描述同一时刻。 和。 我用Joda-Time用两个不同的日期格式解析时间戳。最后,我想有两个DateTime对象,它们在同一时刻相同。 DateFormatter提供了几种控制时区和语言环境的方法,但我无法使其正常工作。 这是我想工作的代码: 问题答案: 如果您的默认时间zome是Europe / Berlin,则2010-10-03 18:58:0

  • 问题内容: 我用来格式化字符串中的日期。但是现在它混合了月份和日期。 我有一个包含的字符串。后 它返回: 我希望它会回来 我怎样才能告诉代码格式是? 作为记录,将按预期解析为。 问题答案: 指定: 在日期格式不明确的情况下(例如,当日期为12或更少时),这将优先使用DD-MM-YYYY格式而不是MM-DD- YYYY。该功能在此处记录。

  • 问题内容: 我有一个返回例如DateTime对象的Web服务:DepartureDate。我使用ajax来获取此代码,并在我看来使用此功能将JSON日期字符串转换为javascript日期对象: 问题是要考虑到客户端计算机上的本地时间,因此不同国家/地区的客户端会获得不同的日期。我想获取从Web服务返回的确切日期。有没有简单的方法可以做到这一点? 问题答案: 问题是考虑了客户端计算机上的本地时间