js 比较日期大小

//比较当前时间和跟进日期,如果大于,返回true,如果小于,返回false
//follDate 是 字符串类型 yyyy-MM-dd
//mytoday 是Date类型
 function dateCom (follDate, mytoday) {
		var arr = follDate.split('-');
		var month = parseInt(arr[1]) - 1;
		var begin = new Date(arr[0], month, arr[2]);
		var begins = begin.getTime();
		var todays = mytoday.getTime();
		if (todays >= begins) {
			return true;
		} else {
			return false;
		}
	}
### JavaScript 中比较两个日期 在 JavaScript 中,`Date` 对象提供了处理日期的强大功能[^1]。为了比较两个 `Date` 对象,可以直接使用关系操作符 (`<`, `>`, `<=`, `>=`) 或者调用 `.getTime()` 方法获取自 Unix 纪元以来的毫秒数来进行数值上的对比。 #### 使用关系操作符直接比较 由于 `Date` 实例可以被隐式转换成时间戳(即从 1970 年 1 月 1 日 UTC 到该时刻所经过的毫秒数),因此可以直接利用这些操作符: ```javascript let dateA = new Date(&#39;2023-10-05&#39;); let dateB = new Date(&#39;2024-08-15&#39;); if (dateA < dateB) { console.log("dateA is earlier than dateB"); } else if (dateA > dateB){ console.log("dateA is later than dateB"); } else { console.log("Both dates are equal."); } ``` #### 转换为时间戳再做比较 另一种方法是显式地将每个 `Date` 对象转为其对应的时间戳值,之后再进行比较: ```javascript let timestampA = dateA.getTime(); let timestampB = dateB.getTime(); console.log(timestampA < timestampB ? "Earlier" : timestampA > timestampB ? "Later" : "Equal"); ``` 需要注意的是,在某些情况下,即使两个不同的 `Date` 对象表示同一瞬间,它们也可能不被认为是完全相同的对象;这是因为对于非原始类型的变量而言,“相等”通常指的是引用而不是实际的内容或状态[^2]。然而,当涉及到具体的时间点时,只要两者的内部时间戳相同,则可以通过上述方式成功判定其相对顺序或者绝对一致性。 另外值得注意的一点是在创建 `Date` 对象的时候要确保输入格式正确无误,并考虑到可能存在的时区差异问题[^4]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值