【发布时间】:2018-02-22 01:11:46
【问题描述】:
我将日期时间和日期存储为 javscript 中的字符串,我需要进行比较。
将它们保留为字符串似乎可行:
const date1 = '2016-01-26 05:20:44'
const date2 = '2016-01-26 06:20:44'
const date3 = '2016-02-26'
date1 > date2 //false
date1 < date2 //true
date3 > date2 //true
date3 > date1 //true
date1 > date3 //false
问题:我可以依赖这个吗?还是这是一种“有效,但不可靠”的交易?
我是否应该将日期字符串转换为日期对象(使用date 或moment)
【问题讨论】:
-
是的,但严格来说你应该使用localeCompare,例如
date1 > date2应该是date1.localCompare(date2) > 0。
标签: javascript string date comparison