我正在尝试比较javascript中的两个日期,它们是两个输入类型=“text”,格式为“06/11/2013 13:24”。
如何比较它们?
谢谢!
答案 0 :(得分:0)
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函数。
答案 1 :(得分:0)
您需要将字符串解析为Date - object:
var firstDate = new Date("06/11/2013 13:24");
var secondDate = new Date(youSecondDateString);
答案 2 :(得分:0)
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
}