返回
用 JS 验证日期格式过期时间:包括 Jest 单元测试
前端
2024-01-20 05:38:25
开发过程中,经常会遇到需要处理日期和时间的场景,验证日期格式过期时间是其中一项常见的任务。本文将讨论如何使用 JavaScript (JS) 来编写一个验证过期时间的函数,并附上 Jest 单元测试以确保其正确性。
编写验证过期时间的函数
// 定义验证过期时间函数
const isValidExpirationDate = (expirationDate) => {
// 将字符串转换为 Date 对象
const date = new Date(expirationDate);
// 检查日期是否有效
if (isNaN(date.getTime())) {
return false;
}
// 获取当前时间
const now = new Date();
// 比较日期是否过期
return date >= now;
};
Jest 单元测试
describe('isValidExpirationDate', () => {
it('should return true for a valid expiration date', () => {
const expirationDate = '2023-12-31';
const result = isValidExpirationDate(expirationDate);
expect(result).toBe(true);
});
it('should return false for an invalid expiration date', () => {
const expirationDate = '2020-01-01';
const result = isValidExpirationDate(expirationDate);
expect(result).toBe(false);
});
it('should return false for an invalid date format', () => {
const expirationDate = 'abc';
const result = isValidExpirationDate(expirationDate);
expect(result).toBe(false);
});
});
使用示例
// 使用函数验证过期时间
const expirationDate = '2023-12-31';
const isValid = isValidExpirationDate(expirationDate);
// 根据结果采取相应操作
if (isValid) {
console.log('日期有效');
} else {
console.log('日期已过期');
}
除了函数和单元测试,本文还提供了使用示例,帮助您在实际项目中应用该函数。如果您想进一步了解 JavaScript 中的日期和时间处理,可以参考 MDN Web Docs 或其他权威资源。