日期"字符串"比较大小 "2021-05-08" < "2021-08-09"
"2021-05-08" < "2021-05-09"
// true
"2021-05-08" <= "2021-05-08"
// true
"2021-05-08" < "2021-05-07"
// fasle
请问是怎么比较的
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(8)
最简单的转换成数字不就可以比较了
或者Date 日期转换一下也行 都一样的
比较的时候,从字符串左边开始,依次比较每个字符,直接出现差异、或者其中一个串结束为止。
比如ABC与ACDE比较,第一个字符相同,继续比较第二个字符,由于第二个字符是后面一个串大,所以不再继续比较,结果就是后面个串大。
再如ABC与ABC123比较,比较三个字符后第一个串结束,所以就是后面一个串大。
所以,长度不能直接决定大小,字符串的大小是由左边开始最前面的字符决定的。
本质是字符串比较,从左到右按位比较每个字符串的ascii值,标准的时间字符串有0补位,比如1月份是01,会小于12月,所有这样比较也基本得到正确结果,前提是有一个标准的时间字符串。
具体示例:
具体参照:
ASCII码
对照表后端最好返回“datatime 类型,而不是timestamp,这种数据格式大小有限”,数据格式统一;前端根据需求把时间戳转换为需要展示的格式即可
可以把时间转成时间戳再对比