alert(new Date(produceDate.replace(/-/g, "/")).toLocaleDateString()>=new Date().toLocaleDateString())produceDate为从页面获取的日期
当前日期为今天即 2010年3月2日当我的 produceDate 设置在 2010-10-01到 2011-01-01 之间的时候 奇迹出现了 alert竟然是false
日期大于2010-03-02 小于2010-10-01 和大于 等于 2011-01-01 都会alert true
郁闷我需要这样比较以判断输入日期是否大于当前日期
还望高手给出解决方法
当前日期为今天即 2010年3月2日当我的 produceDate 设置在 2010-10-01到 2011-01-01 之间的时候 奇迹出现了 alert竟然是false
日期大于2010-03-02 小于2010-10-01 和大于 等于 2011-01-01 都会alert true
郁闷我需要这样比较以判断输入日期是否大于当前日期
还望高手给出解决方法
应该用Date.parse来做
alert(new Date(produceDate.replace(/-/g, "/")).getTime() >= new Date().getTime())
这样可以.
这样写也是一样的
produceDate = "2010-10-01";
function formatDate(date){
var y = date.getFullYear(), m = date.getMonth() + 1, d = date.getDate();
return y + (m < 10 ? "0" + m : m) + (d < 10 ? "0" + d : d);
}
alert(formatDate(new Date(produceDate.replace(/-/g, "/"))) >= formatDate(new Date()))
小于10的月份前面要加0,要不然按字符串比较3会大于10
结贴
谢谢各位