js比较两个日期的时间大小

介绍

使用js比较两个日期的时间大小,一般在前台选择时间时常常使用。比如:结束时间不能小于开始时间,开始时间不能小于当前时间等。

代码示例

示例一:开始时间不能小于当前时间

js 复制代码
//开始时间
var startTime = '2024-04-22'
//当前时间
var currentDate = new Date();
var currentDateStr = currentDate.getFullYear() + '-' + (currentDate.getMonth() + 1) + '-' + currentDate.getDate();
if (new Date(currentDateStr).getTime() > new Date(startTime).getTime()) {
	alert('开始时间不能小于当前时间')
}

示例二:结束时间不能小于开始时间

js 复制代码
var startTime = '2024-04-22'
var endTime = '2024-04-21'
if (new Date(startTime).getTime() > new Date(endTime).getTime()) {
	alert('结束时间不能小于开始时间')
}

正式环境中时间的判断流程

首先判断开始、结束时间是否为空,不为空再判断结束时间是否小于开始时间

js 复制代码
var startTime = $("#startTime").val()
var endTime = $("#endTime").val()
if(isEmpty(startTime)){
	initError('生效时间不能为空',$('#startTime').next());
	flag = false;
}
if(isEmpty(endTime)){
	initError('失效时间不能为空',$('#endTime').next());
	flag = false;
}
if(!isEmpty(startTime)&&!isEmpty(endTime)) {
	var currentDate = new Date();
	var currentDateStr = currentDate.getFullYear() + '-' + (currentDate.getMonth() + 1) + '-' + currentDate.getDate();
	if (new Date(currentDateStr).getTime() > new Date(startTime).getTime()) {
		initError('生效时间不能小于当前时间', $('#startTime').next());
		flag = false;
	}else{
		if (new Date(startTime).getTime() > new Date(endTime).getTime()) {
			initError('生效时间不能大于失效时间', $('#startTime').next());
			flag = false;
		}
	}
}
相关推荐
烛阴3 分钟前
Date-fns教程:现代JavaScript日期处理从入门到精通
前端·javascript
全栈小510 分钟前
【前端】Vue3+elementui+ts,TypeScript Promise<string>转string错误解析,习惯性请出DeepSeek来解答
前端·elementui·typescript·vue3·同步异步
穗余19 分钟前
NodeJS全栈开发面试题讲解——P6安全与鉴权
前端·sql·xss
小蜜蜂嗡嗡1 小时前
flutter项目迁移空安全
javascript·安全·flutter
MyikJ1 小时前
Java求职面试:从Spring到微服务的技术挑战
java·数据库·spring boot·spring cloud·微服务·orm·面试技巧
MyikJ1 小时前
Java 面试实录:从Spring到微服务的技术探讨
java·spring boot·微服务·kafka·spring security·grafana·prometheus
穗余2 小时前
NodeJS全栈开发面试题讲解——P2Express / Nest 后端开发
前端·node.js
ShiinaMashirol2 小时前
代码随想录打卡|Day50 图论(拓扑排序精讲 、dijkstra(朴素版)精讲 )
java·图论
航Hang*2 小时前
WEBSTORM前端 —— 第3章:移动 Web —— 第4节:移动适配-VM
前端·笔记·edge·less·css3·html5·webstorm
江城开朗的豌豆2 小时前
JavaScript篇:a==0 && a==1 居然能成立?揭秘JS中的"魔法"比较
前端·javascript·面试