diff --git a/snippets/daysFromNow.md b/snippets/daysFromNow.md index 4cc87a570..8bf9bd201 100644 --- a/snippets/daysFromNow.md +++ b/snippets/daysFromNow.md @@ -1,20 +1,21 @@ --- -title: daysFromNow.md +title: daysFromNow tags: date,beginner --- Returns the date of `n` days from today as a string representation. -- Use `new Date()` and `Date.prototype.getDate()` to get the current time stamp add the number of milliseconds and use it to create a new `Date` object. +- Use `new Date()` to get the current date, `Math.abs()` and `Date.getDate()` to update the date accordingly and set to the result using `Date.setDate()`. - Use `Date.prototype.toISOString()` to return a string in `yyyy-mm-dd` format. ```js -const daysFromNow = n =>{ - let date = new Date(new Date().getTime() + n * 24 * 60 * 60 * 1000); - return date.toISOString().split('T')[0]; +const daysFromNow = n => { + let d = new Date(); + d.setDate(d.getDate() + Math.abs(n)); + return d.toISOString().split('T')[0]; } ``` ```js -daysFromNow('5'); // 2020-10-13 +daysFromNow(5); // 2020-10-13 (if current date is 2020-10-08) ```