JavaScript如何比较日期字符串?

问题描述 投票:1回答:2

比较两个字符串时,如下所示:

'03-15-2019' < '03-16-2019'

我得到了true的值,这是我所期望的。

我很想知道更多关于它是如何工作的。这是对两个日期的比较,还是还有一些其他比较,我不太明白?

javascript date string-comparison
2个回答
0
投票

日期字符串只是字符串,因此它们遵守javascript字符串比较规则。

console.log('04-13-2019' < '04-15-2019') #true

但是要小心这里,因为如果你依赖于这个比较,因为如果这两个字符串的长度不同,它将导致意外的行为,如下所示:

console.log('ab' < 'b') #true

如果你想比较日期,你最好依靠Date对象或使用moment js


1
投票

字符串比较逐字符发生

console.log('aaaa' < 'b')
console.log('aa' < 'ab')
console.log('ab' < 'aa')

'03-15-2019' < '03-16-2019'这只是字符串比较而不是日期比较,如果你想比较你需要将它更改为日期对象的日期而不是比较

console.log(new Date('03/15/2019') < new Date('03/16/2019'))
© www.soinside.com 2019 - 2024. All rights reserved.