如何比较日期大小
阅读 1.9k
在JS中,有时候需要比较两个日期的大小,怎么做呢?这主要分两种情况:一种是字符串格式,另外一种是日期格式。
字符串格式
对于字符串格式的日期,可以使用比较操作符来直接比较,比如:
'2020-12-12' > '2020-12-13'
对于比较操作符,如果两个操作数都是字符串,则比较两个字符串对应的字符编码值
,只要格式固定(YYYY- MM- DD),那么,后面的日期一定比前面的日期要大。所以,可以使用这种方式进行比较。
注意:
如果字符串格式不是使用固定的格式,比如下面这种:
'2020-12-12' > '2020-2-13'
在比较的时候,后面字符串的第6位为‘2’,比前面字符串第6位的‘1’的字符编码值要大,所以,这种比较就会出错。
日期格式
如果本身就是日期类型,也可以使用比较操作符来比较,比如:
new Date('2020-12-12') > new Date('2020-12-13')
对于比较操作符,如果一个操作数是对象,则调用这个对象的 valueOf()
方法,用得到的结果执行比较。那么,对于上面代码,通过valueOf()会得到该日期的毫秒数
,日期在后面的毫秒数自然比前面的大。
最后编辑于: 2024-03-11