JavaScript LocaleDateString 返回日期对象

JavaScript LocaleDateString back to Date Object

简介

我有一个 DatePicker 组件,returns 一个 JS 本机日期对象。当用户选择一个日期时,我会自动将其转换为语言环境日期字符串,只是为了使其在文本输入中可见。我的应用程序中的每个文本输入都有一个函数 'getText()' 来获取它们的值...因此我需要获取此语言环境日期字符串并将其转换回本机 js 日期对象。

这必须适用于每个国家/地区。

这是我正在尝试做的事情的表示:

问题

我尝试执行 new Date(localeDateStr) 但没有按预期工作,因为 Date 对象不接受像“DD/MM/YYYY”这样的日期格式。任何想法如何处理这个?

非常感谢您的帮助。谢谢。

Pd:我正在使用 js-joda 和 JS 的本机日期方法。还有,反应框架。

JS-Joda 有一个方法“LocaleDate.parse(dateStr)”,它接受 'mm-dd-yyyy' 类型的字符串,所以它不适用于我的用例。

d 对象可以存储可以通过 toString()valueOf() 方法检索的两个值,例如:

d = {
toString(): d.toLocaleDateString(),
valueOf(): d.getTime()
}

出于表示/渲染目的 - toString() 将被称为隐式,用于数学 - valueOf()。例如,您可以在通过 API

发送之前将 d 乘以 1