EN
JavaScript - subtract days from date
0 points
In this article, we would like to show you how to subtract days from date in JavaScript.
Quick solution:
xxxxxxxxxx
1
const date = new Date('2021-06-30');
2
date.setDate(date.getDate() - 2); // subtracted 2 days from existing date
3
4
console.log(date.toISOString()); // 2021-06-28T00:00:00.000Z
or:
xxxxxxxxxx
1
const date = new Date('2021-06-30');
2
const newDate = new Date(date.getTime() - 2 * (24 * 60 * 60 * 1000)); // subtracted 2 days from existing date
3
4
console.log(newDate.toISOString()); // 2021-06-28T00:00:00.000Z
In this example, we create a simple function that takes two arguments:
date
from which we want to subtract some days,days
- a number of days we want to subtract.
Runnable example:
xxxxxxxxxx
1
const subtractDays = (date, days) => {
2
let result = new Date(date);
3
result.setDate(result.getDate() - days);
4
return result;
5
};
6
7
let date = new Date('2021-06-30');
8
let result = subtractDays(date, 3);
9
10
console.log(result.toISOString()); // 2021-06-27T00:00:00.000Z
In this example, we add a function to the Date.prototype
so we can use it on any date object.
xxxxxxxxxx
1
Date.prototype.subtractDays = function (days) {
2
let date = new Date(this.valueOf());
3
date.setDate(date.getDate() - days);
4
return date;
5
};
6
7
let date = new Date('2021-06-30');
8
let result = date.subtractDays(2)
9
10
console.log(result.toISOString()); // 2021-06-28T00:00:00.000Z