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;
		}
	}
}
相关推荐
10share9 分钟前
React 新一代样式隔离方案 —— 编译时、零运行时、原生写法
前端·react.js
upgrador18 分钟前
桌面应用开发:Electron 与 NSIS 的关系、打包流程及 Windows 本地构建实战
javascript·windows·electron
Revolution6119 分钟前
Node.js 是什么:前端项目里哪些事情由它完成
前端·面试·node.js
笨蛋不要掉眼泪30 分钟前
RabbitMQ消息队列:SpringAMQP
java·分布式·rabbitmq
我要两颗404西柚37 分钟前
Stage three:VUE工程化与实战工具
前端·javascript·vue.js
光影少年42 分钟前
RN 的EventEmitter 双向通信
前端·react native·react.js
Mark_ZP1 小时前
【锁6】AQS (AbstractQueuedSynchronizer) 核心原理详解
java
AI砖家1 小时前
多商户多租户系统架构设计文档(Java版)
java·开发语言·系统架构·多租户·多商户
落苜蓿蓝1 小时前
Java 循环中对象复用导致属性覆盖?从 JVM 内存模型讲解原因
java·jvm·python
weixin_440784111 小时前
Android基础知识汇总
android·java·android studio