【发布时间】:2023-03-26 11:25:01
【问题描述】:
我正在尝试在 javascript 中比较两个日期,它们位于两个 input type="text" 中,格式为“06/11/2013 13:24”。
知道如何比较它们吗?
谢谢!
【问题讨论】:
-
你只是想比较日期部分吗?
标签: javascript jquery date format compare
我正在尝试在 javascript 中比较两个日期,它们位于两个 input type="text" 中,格式为“06/11/2013 13:24”。
知道如何比较它们吗?
谢谢!
【问题讨论】:
标签: javascript jquery date format compare
您需要将字符串解析为日期 - 对象:
var firstDate = new Date("06/11/2013 13:24");
var secondDate = new Date(youSecondDateString);
【讨论】:
Age from Date of Birth using JQuery
可能与上述问题重复,但答案是
var startDt=document.getElementById("startDateId").value;
var endDt=document.getElementById("endDateId").value;
if( (new Date(startDt).getTime() > new Date(endDt).getTime()))
{
//perform desired operation here
}
【讨论】:
Date object 会做你想做的事 - 为每个日期构造一个,然后使用通常的运算符进行比较。
例如,从 date2 中减去 date1 将得到两个日期之间的毫秒数。
您可以通过将毫秒除以 1000 并四舍五入得到秒数:
var seconds = Math.round((date2-date1)/1000);
然后你可以除以 60 得到分钟,再除以 60 得到小时,然后再除以 24 得到天(等等)。
您可以通过以下方式获得 dd:hh:mm 格式的图形
window.minutesPerDay = 60 * 24;
function pad(number) {
var result = "" + number;
if (result.length < 2) {
result = "0" + result;
}
return result;
}
function millisToDaysHoursMinutes(millis) {
var seconds = millis / 1000;
var totalMinutes = seconds / 60;
var days = totalMinutes / minutesPerDay;
totalMinutes -= minutesPerDay * days;
var hours = totalMinutes / 60;
totalMinutes -= hours * 60;
return days + ":" + pad(hours) + ":" + pad(totalMinutes);
}
var date1 = new Date("06/11/2013 13:24"),
date2 = new Date("07/11/2013 13:24"),
milliseconds = date2 - date1;
alert(millisToDaysHoursMinutes(milliseconds));
我从here 获取了millisToDaysHoursMinutes 函数。
【讨论】: