Javascript 字符串日期与系统日期比较
我有两个日期,第一个日期是来自输入文本的字符串,如01-01-2011(dd-MM-yyyy),第二个日期是当前日期或系统日期(new date()) 我必须将输入日期与当前日期(更大或相等)进行比较。我面临着NaN的问题,并没有在谷歌找到有效的帮助Javascript 字符串日期与系统日期比较,javascript,Javascript,我有两个日期,第一个日期是来自输入文本的字符串,如01-01-2011(dd-MM-yyyy),第二个日期是当前日期或系统日期(new date()) 我必须将输入日期与当前日期(更大或相等)进行比较。我面临着NaN的问题,并没有在谷歌找到有效的帮助 任何帮助都将不胜感激。请尝试以下代码片段 var from = "13-05-2014".split("-"); var dt1 = new Date(from[2], from[1] - 1, from[0]); var dt2 = new Da
任何帮助都将不胜感激。请尝试以下代码片段
var from = "13-05-2014".split("-");
var dt1 = new Date(from[2], from[1] - 1, from[0]);
var dt2 = new Date();
if (dt1 - dt2 > 0) {
alert("current or future date");
}
如果你想在细节格式的差异,然后请检查链接
和这个日期比较一下
或
制作两个日期并使用此方法
function datediff(date1, date2) {
var y1 = date1.getFullYear();
var m1 = date1.getMonth();
var d1 = date1.getDate();
var y2 = date2.getFullYear();
var m2 = date2.getMonth();
var d2 = date2.getDate();
if (d1 < d2) {
m1--;
var date=new Date(y2, m2, 1, 12);
date.setDate(0);
d1 += date.getDate();
}
if (m1 < m2) {
y1--;
m1 += 12;
}
return [y1 - y2, m1 - m2, d1 - d2];
}
函数datediff(date1,date2){
var y1=date1.getFullYear();
var m1=date1.getMonth();
var d1=date1.getDate();
var y2=date2.getFullYear();
var m2=date2.getMonth();
var d2=date2.getDate();
如果(d1<!DOCTYPE html>
<html>
<head>
<script>
Date.prototype.format=function(){
var year=this.getFullYear();
var month=this.getMonth();
var date=this.getDate();
return year+"-"+month+"-"+date;
}
var usrdate=new Date();
usrdate.setFullYear(2014,4,13);
usrdate=usrdate.format();
function compare(usrdate)
{
var sysdate=new Date().format();
if(sysdate>usrdate)
alert("System Date is greater");
else if(sysdate<usrdate)
alert("User Date is greater");
else
alert("Both date is equal");
}
</script>
</head>
<body>
<p onclick="compare(usrdate);">Compare Date </p>
</body>
</html>
Date.prototype.format=function(){
var year=this.getFullYear();
var month=this.getMonth();
var date=this.getDate();
返回年份+“-”+月份+“-”+日期;
}
var usrdate=新日期();
usrdate.setFullYear(2014,4,13);
usrdate=usrdate.format();
函数比较(usrdate)
{
var sysdate=new Date().format();
如果(sysdate>usrdate)
警报(“系统日期更大”);
else if(sysdate)字符串是什么样子的?该日期显然无效。您的代码是什么样子的?您的输入文本错误日期字符串是这样的01-01-2011(dd-MM-yyyy)。
<!DOCTYPE html>
<html>
<head>
<script>
Date.prototype.format=function(){
var year=this.getFullYear();
var month=this.getMonth();
var date=this.getDate();
return year+"-"+month+"-"+date;
}
var usrdate=new Date();
usrdate.setFullYear(2014,4,13);
usrdate=usrdate.format();
function compare(usrdate)
{
var sysdate=new Date().format();
if(sysdate>usrdate)
alert("System Date is greater");
else if(sysdate<usrdate)
alert("User Date is greater");
else
alert("Both date is equal");
}
</script>
</head>
<body>
<p onclick="compare(usrdate);">Compare Date </p>
</body>
</html>