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;
		}
	}
}
相关推荐
乌日尼乐2 分钟前
【Java基础整理】Java字符串处理,String、StringBuffer、StringBuilder
java·后端
在西安放羊的牛油果3 分钟前
浅谈 import.meta.env 和 process.env 的区别
前端·vue.js·node.js
鹏北海8 分钟前
从弹窗变胖到 npm 依赖管理:一次完整的问题排查记录
前端·npm·node.js
布列瑟农的星空9 分钟前
js中的using声明
前端
薛定谔的猫29 分钟前
Cursor 系列(2):使用心得
前端·ai编程·cursor
全栈独立开发者9 分钟前
点餐系统装上了“DeepSeek大脑”:基于 Spring AI + PgVector 的 RAG 落地指南
java·人工智能·spring
用户904706683579 分钟前
后端问前端:我的接口请求花了多少秒?为啥那么慢,是你慢还是我慢?
前端
深念Y10 分钟前
仿B站项目 前端 4 首页 顶层导航栏
前端·vue·ai编程·导航栏·bilibili·ai开发
dmonstererer11 分钟前
【k8s设置污点/容忍】
java·容器·kubernetes
dragonZhang16 分钟前
基于 Agent Skills 的 UI 重构实践:从 Demo 到主题化界面的升级之路
前端·ai编程·claude