javascript - 验证包含特定模式中的日期时间的字符串

标签 javascript node.js date momentjs

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

{
    "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" ,以及“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。

有人可以帮忙吗?

最佳答案

您使用了错误的格式。请尝试使用“YYYY-MM-DD HH:mm:ss”

To learn more about Moment.js Formats, take a look at its 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>

关于javascript - 验证包含特定模式中的日期时间的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58591132/

相关文章:

javascript - 如何使用 Nodemailer 从表单发送电子邮件

javascript - 使用 JavaScript 后不返回显示 block 的初始 css 设置

javascript - 将数据从数据库发送到客户端,而无需使用模板引擎(node.js)

node.js - Firebase 云消息传递 - 具有多个主题 - 没有消息重复

ios - 在 swift 中解析 JSON 数组,对其进行排序并找到重叠的日期

javascript - 从 Date 对象计算 BST 时间?

java - 无法解析的日期与时区

javascript - 如何重用 FireBase 中的 token

java - primefaces 动态 Accordion 未将值解析为选项卡更改监听器

node.js - 如何在 Nodejs Express 应用程序中组织路线