EN
JavaScript - subtract milliseconds from date
0
points
In this article, we would like to show you how to subtract milliseconds from date in JavaScript.
Quick solution:
// ONLINE-RUNNER:browser;
let date = new Date('2021-08-30T00:00:00.000Z');
date.setMilliseconds(date.getMilliseconds() - 5);
console.log(date.toISOString()); // 2021-08-29T23:59:59.995Z
1. Example reusable lambda function
In this example, we create a simple function that takes two arguments:
date
from which we want to subtract some milliseconds,milliseconds
- a number of milliseconds we want to subtract.
Runnable example:
// ONLINE-RUNNER:browser;
const subtractMilliseconds = (date, milliseconds) => {
const result = new Date(date);
result.setMilliseconds(result.getMilliseconds() - milliseconds);
return result;
};
let date = new Date('2021-08-30T00:00:00.000Z');
console.log(subtractMilliseconds(date, 5).toISOString()); // 2021-08-29T23:59:59.995Z
Output:
2021-08-29T23:59:59.995Z
2. Extending existing Date
class with Date.prototype
In this example, we add a function to the Date.prototype
so we can use it on any date object.
// ONLINE-RUNNER:browser;
Date.prototype.subtractMilliseconds = function (milliseconds) {
let date = new Date(this.valueOf());
date.setMilliseconds(date.getMilliseconds() - milliseconds);
return date;
};
let date = new Date('2021-08-30T00:00:00.000Z');
console.log(date.subtractMilliseconds(5).toISOString()); // 2021-08-29T23:59:59.995Z
Output:
2021-08-29T23:59:59.995Z