javascript 验证日期_js校验日期是否有效:代码示例

qianduancss

温馨提示:这篇文章已超过230天没有更新,请注意相关的内容是否还可用!

javascript 验证日期_js校验日期是否有效:代码示例

JavaScript可以通过正则表达式来验证日期是否有效。以下是一个示例代码:

function isValidDate(dateString) {

// 使用正则表达式匹配日期格式

var pattern = /^\d{4}-\d{2}-\d{2}$/;

// 如果日期格式不匹配,则返回false

if (!pattern.test(dateString)) {

return false;

}

// 将日期字符串转换为Date对象

var date = new Date(dateString);

// 如果转换后的日期无效,则返回false

if (isNaN(date.getTime())) {

return false;

}

// 如果日期的年、月、日与输入的字符串不一致,则返回false

var year = date.getFullYear();

var month = date.getMonth() + 1;

var day = date.getDate();

return (

year === parseInt(dateString.substring(0, 4), 10) &&

month === parseInt(dateString.substring(5, 7), 10) &&

day === parseInt(dateString.substring(8), 10)

);

}

// 示例用法:

console.log(isValidDate("2021-01-01")); // true

console.log(isValidDate("2021-13-01")); // false

console.log(isValidDate("2021-02-29")); // false(2021年不是闰年)

以上代码中,`isValidDate`函数接受一个日期字符串作为参数。它使用正则表达式匹配日期格式,如果格式不正确则返回`false`。然后,它将日期字符串转换为`Date`对象,如果转换后的日期无效则返回`false`。它将转换后的日期的年、月、日与输入的字符串进行比较,如果不一致则返回`false`,否则返回`true`。

示例用法中,分别验证了一个有效日期、一个月份超出范围的日期和一个非闰年的2月29日。根据验证结果,第一个日期是有效的,而后两个日期是无效的。

文章版权声明:除非注明,否则均为莫宇前端原创文章,转载或复制请以超链接形式并注明出处。

取消
微信二维码
微信二维码
支付宝二维码