【问题标题】:Validation of String containing DateTime in a specific pattern以特定模式验证包含 DateTime 的字符串
【发布时间】:2019-10-28 12:42:10
【问题描述】:

我正在尝试对从 Nodejs 中的帖子接收的参数进行一些验证。 身体是这样的:

{
    "startDateTime": "2019-10-01 00:00:01",
    "endDateTime": "2019-10-01 23:59:59",
    "interval": "00:00:01"
}

所以,我需要验证startDateTimeendDateTime 是否在"yyyy-MM-dd hh:mm:ss" 模式中,interval"hh:mm:ss"

我尝试使用 moment 包,但没有用

const testDate = moment(startDateTime, "yyyy-MM-dd hh:mm:ss", true).isValid()

我正在传递 StartDateTime = "2019-10-01 00:00:01" 并且 testDate 被分配为 false。

有人可以帮忙吗?

【问题讨论】:

标签: javascript node.js date momentjs


【解决方案1】:

您使用了错误的格式。请改用"YYYY-MM-DD HH:mm:ss"

要了解有关 Moment.js 格式的更多信息,请查看其documentation

let response = {
    "startDateTime": "2019-10-01 00:00:01",
    "endDateTime": "2019-10-01 23:59:59",
    "interval": "00:00:01"
};

const testDate = moment(response.startDateTime, "YYYY-MM-DD HH:mm:ss", true).isValid();

console.log(testDate);
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.24.0/moment.min.js"></script>

【讨论】:

    猜你喜欢
    • 2021-10-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-01-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-27
    相关资源
    最近更新 更多