【发布时间】:2019-11-13 05:35:37
【问题描述】:
假设我有一个日期时间字符串10/09/2019 10:03:00.000 AM。
现在,如果我在美国,我会读到 2019 年 10 月 9 日,如果我在印度,我会读到 2019 年 9 月 10 日。
所以,我的问题是如何将此字符串解析为 Date 对象,以便根据本地时区进行解析。
我正在使用luxon,但是,纯 javascript 解决方案也可以。
【问题讨论】:
-
您所描述的与时区无关;这是基于文化的日期格式偏好,
day/month/yearvsmonth/day/year。如果您希望正确处理,您可能必须允许您的用户设置他们的日期格式偏好,但希望仅用于显示。大多数系统都希望在year-month-day hour:minute:second中处理日期/时间戳,包括或不包括时区(+/- 偏移)。 -
您阅读了 luxon 文档吗? moment.github.io/luxon/docs/manual/parsing.html#fromformat
-
fromFormat期望提供一种格式。我想要基于文化的自动解析。我想正如蒂姆建议的那样,我需要切换到year-month-day hour:minute:second -
所以你真正的问题是“我如何知道用户期望什么格式”。你不能,所以以明确的格式显示时间戳,并在请求输入时告诉用户你期望的格式。
标签: javascript date datetime luxon