js如何比較兩個日期的時間大小簡單代碼示例
介紹
使用js比較兩個日期的時間大小,一般在前臺選擇時間時常常使用。比如:結(jié)束時間不能小于開始時間,開始時間不能小于當前時間等。
代碼示例
示例一:開始時間不能小于當前時間
//開始時間
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('開始時間不能小于當前時間')
}
示例二:結(jié)束時間不能小于開始時間
var startTime = '2024-04-22'
var endTime = '2024-04-21'
if (new Date(startTime).getTime() > new Date(endTime).getTime()) {
alert('結(jié)束時間不能小于開始時間')
}
正式環(huán)境中時間的判斷流程
首先判斷開始、結(jié)束時間是否為空,不為空再判斷結(jié)束時間是否小于開始時間
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;
}
}
}附:js兩個日期比較相差多少天實例
首先來分析一個問題,兩個日期是什么格式的?假設(shè)是字符串格式:
可能是:2018/04/20,也可能是:2018/04/20 12:00:00
那接下來分情況討論。
首先看看不含時間部分的日期格式計算:
var aDate = new Date('2018/04/23'); // 通過日期字符串,初始化第一個日期對象
var bDate = new Date('2018/04/25'); // 同上,初始化第二個日期對象
var aDay = 24 * 60 * 60 * 1000; // 完整一天有24小時,將小時換算成毫秒時間戳
var diffDay = (bDate - aDate) / aDay; // 計算間隔天數(shù)(注意日期隱式轉(zhuǎn)換)
console.log(diffDay); // 2,23日-25日間隔2天然后再來看看包含時間部分的日期格式計算:
var aDate = new Date('2018/04/23');
var bDate = new Date('2018/04/25 12:00:00'); // 包含時間的日期字符串
var aDay = 24 * 60 * 60 * 1000;
var diffDay = (bDate - aDate) / aDay;
console.log(diffDay); // 2.5,自然計算的結(jié)果
console.log(Math.floor(diffDay)); // 2,根據(jù)個人情況向下取整,整數(shù)天
console.log(Math.ceil(diffDay)); // 3,根據(jù)個人情況向上取整,整數(shù)天總結(jié)
到此這篇關(guān)于js如何比較兩個日期的時間大小的文章就介紹到這了,更多相關(guān)js比較兩個日期的時間大小內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
JavaScript中EventBus實現(xiàn)對象之間通信
這篇文章主要介紹了JavaScript中EventBus實現(xiàn)對象之間通信,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-10-10
js動態(tài)生成Html元素實現(xiàn)Post操作(createElement)
這篇文章主要介紹了js動態(tài)生成Html元素實現(xiàn)Post操作(createElement),需要的朋友可以參考下2015-09-09

