Javascript:将日期作为数字进行比较
这很简单,但我不知道if语句从不为tue的原因:Javascript:将日期作为数字进行比较,javascript,date,Javascript,Date,这很简单,但我不知道if语句从不为tue的原因: var sFrom = $('#from').val(); //2013-10-04 var sTo = $('#to').val(); //2013-10-06 var dFrom = Date.parse(sFrom); var dTo = Date.parse(sTo); var dFullDate = new Date(item.created*1000); var sDate = dFullDate.getFullYear()
var sFrom = $('#from').val(); //2013-10-04
var sTo = $('#to').val(); //2013-10-06
var dFrom = Date.parse(sFrom);
var dTo = Date.parse(sTo);
var dFullDate = new Date(item.created*1000);
var sDate = dFullDate.getFullYear() + "-" + (dFullDate.getMonth()+1) + "-" + dFullDate.getDate();
var dDate = Date.parse(sDate); //2013-10-5 should work, but nothing works
if((dDate > dFrom) && (dDate < dTo)){
insertItem(i, item);
}
var sFrom=$('#from').val()//2013-10-04
var sTo=$('#to').val()//2013-10-06
var dFrom=Date.parse(sFrom);
var dTo=Date.parse(sTo);
var dFullDate=新日期(创建的项目*1000);
var sDate=dFullDate.getFullYear()+“-”+(dFullDate.getMonth()+1)+“-”+dFullDate.getDate();
var dDate=Date.parse(sDate)//2013-10-5应该行得通,但什么都不行
如果((dDate>dFrom)和&(dDate
更新
它比较两个日期,其中一个日期的日期或月份为一位数(如果小于10)。所以我所做的就是添加一个函数,将其转换为两位数,现在比较就可以了
function parseDateToYYYYMMDD(date){
var year = date.getFullYear();
var month = date.getMonth()+1;
var day = date.getDate();
if(month < 10){
month = "0" + month;
}
if(day < 10){
day = "0" + day;
}
var sDate = year + "-" + month + "-" + day;
var dDate = Date.parse(sDate);
return dDate;
}
函数parseDateToYYYYMMDD(日期){
var year=date.getFullYear();
var month=date.getMonth()+1;
var day=date.getDate();
如果(月<10){
月份=“0”+月份;
}
如果(第10天){
day=“0”+天;
}
var sDate=年+“-”+月+“-”+日;
var dDate=Date.parse(sDate);
返回dDate;
}
根据您使用的浏览器,Date.parse
可能不支持该YYYY-MM-DD
格式,该格式仅在ECMAScript 5(大约四年前)时添加到规范中
尽管规范中从未包含它,但几乎所有浏览器都支持YYYY/MM/DD
例如,虽然()在Chrome上工作,但在IE8上不工作。如果我们(),它可以在Chrome和IE8上运行
当然,您也可以自己解析它:
function parseYYYYMMDD(str) {
var parts = str.split('-');
return +new Date(
parseInt(parts[0], 10), // Year
parseInt(parts[1], 10) - 1, // Month (starts with 0)
parseInt(parts[2], 10) // Day
);
}
如果你正在做大量的约会工作,那么不妨看看像这样的日期库。不过,仅仅为此添加它可能有点过头了。与其使用JavaScripts本机实现,不如尝试使用moment.js,对您的问题进行更好的描述总是一个好主意“不工作”不是一个有用的问题描述。说出你期望的结果,你看到的结果,以及为什么这会让你感到惊讶。虽然它应该是真的(和我提到的日期一样),但什么是
项。创建的?顺便说一句,你认为dFullDate
和dDate
之间有什么区别吗?@Bergi:我以为目标是删除时间部分,但这只是猜测而已。:-)