From c832e8b453e47cffe2c22fcd10f2e8e3b4706151 Mon Sep 17 00:00:00 2001 From: nonseodion Date: Fri, 9 Oct 2020 00:06:41 +0100 Subject: [PATCH 1/4] add daysBetween --- snippets/daysBetween.md | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 snippets/daysBetween.md diff --git a/snippets/daysBetween.md b/snippets/daysBetween.md new file mode 100644 index 000000000..8a658bc3c --- /dev/null +++ b/snippets/daysBetween.md @@ -0,0 +1,18 @@ +--- +title: daysBetween.md +tags: date,begineer +--- + +Returns the number of days between two `Date` objects. + +- Subtract the two `Date` objects and find the absolute value using `Math.abs()` +- Divide by the number of milliseconds in a day + +```js +const daysBetween = (date1, date2) => + Math.abs(date1 - date2) / (1000 * 60 * 60 * 24) +``` + +```js +daysBetween(new Date("11-1-2020"), new Date("11-3-2020")); // 2 +``` \ No newline at end of file From 2431ddc820d26ad222f4104c0e0845794dc9f6bb Mon Sep 17 00:00:00 2001 From: nonseodion Date: Fri, 9 Oct 2020 00:49:17 +0100 Subject: [PATCH 2/4] add daysFromNow.md --- snippets/daysFromNow.md | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 snippets/daysFromNow.md diff --git a/snippets/daysFromNow.md b/snippets/daysFromNow.md new file mode 100644 index 000000000..4cc87a570 --- /dev/null +++ b/snippets/daysFromNow.md @@ -0,0 +1,20 @@ +--- +title: daysFromNow.md +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 `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]; +} +``` + +```js +daysFromNow('5'); // 2020-10-13 +``` From c52a748de0e614afe9e1c6df7fe98753521ffb59 Mon Sep 17 00:00:00 2001 From: nonseodion <38128301+nonseodion@users.noreply.github.com> Date: Fri, 9 Oct 2020 10:12:09 +0100 Subject: [PATCH 3/4] removed daysBetween.md --- snippets/daysBetween.md | 18 ------------------ 1 file changed, 18 deletions(-) delete mode 100644 snippets/daysBetween.md diff --git a/snippets/daysBetween.md b/snippets/daysBetween.md deleted file mode 100644 index 8a658bc3c..000000000 --- a/snippets/daysBetween.md +++ /dev/null @@ -1,18 +0,0 @@ ---- -title: daysBetween.md -tags: date,begineer ---- - -Returns the number of days between two `Date` objects. - -- Subtract the two `Date` objects and find the absolute value using `Math.abs()` -- Divide by the number of milliseconds in a day - -```js -const daysBetween = (date1, date2) => - Math.abs(date1 - date2) / (1000 * 60 * 60 * 24) -``` - -```js -daysBetween(new Date("11-1-2020"), new Date("11-3-2020")); // 2 -``` \ No newline at end of file From 355cc6873f84632e38a4cd4e8265ee496e4792f4 Mon Sep 17 00:00:00 2001 From: Angelos Chalaris Date: Fri, 9 Oct 2020 12:19:03 +0300 Subject: [PATCH 4/4] Update daysFromNow.md --- snippets/daysFromNow.md | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) 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) ```