4

我有一个带有德国日期的字符串(31.01.2019,DD.MM.YYYY)。现在我需要使用 date-fns 检查日期是否有效。

dateFns.isValid(new Date('19.11.2019'), 'DD.MM.YYYY');

这是行不通的。我总是从 date-fns 得到错误的反馈。我认为 date-fns 期待另一种日期格式。

如何使用德语日期格式验证字符串?

4

2 回答 2

3

您可以使用date-fns 库的功能isValidparse

import { isValid, parse } from 'date-fns';

// parse the string to a Date
const date = parse('31.08.2012', 'dd.MM.yyyy', new Date());

// then check the validity of that date
isValid(date)

查看文档以获取有关这些功能的更多详细信息:https ://date-fns.org/docs/Getting-Started

于 2020-06-09T08:29:27.550 回答
0

从 date-fns文档开始:

如果参数为无效日期,则返回 false,否则返回 true。Invalid Date 是一个日期,其时间值为 NaN。

因为new Date('19.11.2019')已经给出了一个Invalid Date(因为它不是 ISO 格式的),所以你得到false.

如果您想使用德语格式,您应该您的日期格式转换为 ISO 格式。

于 2019-02-02T20:14:58.953 回答