逻辑思路
-
得到标准的字符串格式的日期,一般我们的字符串格式的日期,大多是这样:
2015/01/12
or2017-8-13
,前者是比較标准的字符串格式,后者在火狐下直接使用Date.parse()
方法会报错, -
所以为了兼容所有的浏览器,我们先要把日期字符串格式全部转成前者统一下,之后再调用
Date.parse()
将日期字符串转成时间戳. -
直接比较 ( > | <)
完整代码
var date1 = '2019-9-8'
var date2 = '2019-9-14' //字符串日期
//正则将字符串格式转换统一标准格式
var date1_s = date1.replace(/\-/g,'/')` //输出:2019/9/4.
var date2_s = date2.replace(/\-/g,'/')
//替换字符,变成标准格式
var date1_s = date1.replace("-","/"); //输出:2019/9/4.
var date1_unix=Date.parse(date1_s) //將字符串格式日期转化为时间戳,就是1970年到当前日期的毫秒数
var date2_unix=Date.parse(date2_s) //將字符串格式日期转化为时间戳,就是1970年到当前日期的毫秒数
if(date2_unix > date1_unix){
alert('date2 > date1')
}