我想把两个Iso字符串的日期按天数比较,日期的格式是这样的。
**
"2020-05-07T15:51:28.124Z"
**
我做了这个函数,以获得天数比较的结果。
compareDatesByDays(higherDate, lowerDate) {
const diffTime = Math.abs(higherDate - lowerDate)
const diffDays = Math.ceil(diffTime / (1000 * 60 * 60 * 24))
return diffDays
}
Math.abs 给出 NaN 而且我认为这不能用于字符串 iso date!!!
你可以试试这个
function compareDatesByDays(higherDate, lowerDate) {
const d1 = new Date(higherDate);
const d2 = new Date(lowerDate);
const diffTime = Math.abs(d1.getTime() - d2.getTime());
const diffDays = Math.ceil(diffTime / (1000 * 60 * 60 * 24));
return diffDays;
}
console.log(compareDatesByDays("2020-05-07T15:51:28.124Z", "2020-05-03T15:51:28.124Z")); // -> 4
你可能想使用一个库而不是标准的javascript日期。 最流行的是 moment.js
在moment.js.comdocs中。
moment(higherDate).diff(lowerDate, 'days') // returns int