首页 > 解决方案 > JavaScript LocaleDateString 返回日期对象

问题描述

介绍

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

这必须适用于每个国家。

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

在此处输入图像描述

问题

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

我将衷心感谢您的帮助。谢谢你。

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

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

标签: javascriptreactjsreact-nativedatejs-joda

解决方案


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

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

对于表示/渲染目的 -toString()将被称为隐式,对于数学 - valueOf()。例如,您可以d在通过 API 发送之前乘以 1


推荐阅读