js时间比较大小
千万注意
必须new Date("2023-06-16 00:00:00") 不能
new Date("2023-06-16"),因为
new Date("2023-06-16")
.getTime()
== new Date("2023-06-16 08:00:00")
.getTime()
这个和时区有关系
new Date("2023-06-16")其实是
new Date("2023-06-16
08:00:00
")
千万注意
ios转换时间戳的时候对时间的数据格式是有要求的 2019-8-5 12:18:35 对于ios是无法识别的,必须转换成 2019/8/5 12:18:35 才可以正常获取时间对象
所以需要用replace(/-/g,'/')
1. 使用比较运算符(例如 `<`, `>`, `<=`, `>=`)比较两个 `Date` 对象:
var date1 = new Date("2023-06-16 00:00:00".replace(/-/g,'/'));
var date2 = new Date("2023-06-16 08:00:00"
.replace(/-/g,'/')
);
if (date1 < date2) {
console.log("date1 小于 date2");
} else if (date1 > date2) {
console.log("date1 大于 date2");
} else {
console.log("date1 等于 date2");
}
2. 使用 `getTime()` 方法获取两个日期的时间戳(自1970年1月1日以来的毫秒数),然后比较时间戳的大小:
var date1 = new Date("2023-06-16 00:00:00"
.replace(/-/g,'/')
);
var date2 = new Date("2023-06-16 08:00:00"
.replace(/-/g,'/')
);
if (date1.getTime() < date2.getTime()) {
console.log("date1 小于 date2");
} else if (date1.getTime() > date2.getTime()) {
console.log("date1 大于 date2");
} else {
console.log("date1 等于 date2");
}
3. 使用 `valueOf()` 方法获取日期的时间戳,并进行比较:
var date1 = new Date("2023-06-16 00:00:00"
.replace(/-/g,'/')
);
var date2 = new Date("2023-06-16 08:00:00"
.replace(/-/g,'/')
);
if (date1.valueOf() < date2.valueOf()) {
console.log("date1 小于 date2");
} else if (date1.valueOf() > date2.valueOf()) {
console.log("date1 大于 date2");
} else {
console.log("date1 等于 date2");
}
posted on 2023-09-21 15:31 ranyonsue 阅读(1033) 评论(0) 编辑 收藏 举报
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 字符编码:从基础到乱码解决
2020-09-21 利用flex布局横向滚动
2018-09-21 JavaScript对象数组根据某属性sort升降序排序