Files
30-seconds-of-code/snippets/isDateValid.md
Isabelle Viktoria Maciohsek 27c168ce55 Bake date into snippets
2021-06-13 13:55:00 +03:00

26 lines
788 B
Markdown

---
title: isDateValid
tags: date,intermediate
firstSeen: 2020-10-08T16:39:23+03:00
lastUpdated: 2020-10-20T23:02:01+03:00
---
Checks if a valid date object can be created from the given values.
- Use the spread operator (`...`) to pass the array of arguments to the `Date` constructor.
- Use `Date.prototype.valueOf()` and `Number.isNaN()` to check if a valid `Date` object can be created from the given values.
```js
const isDateValid = (...val) => !Number.isNaN(new Date(...val).valueOf());
```
```js
isDateValid('December 17, 1995 03:24:00'); // true
isDateValid('1995-12-17T03:24:00'); // true
isDateValid('1995-12-17 T03:24:00'); // false
isDateValid('Duck'); // false
isDateValid(1995, 11, 17); // true
isDateValid(1995, 11, 17, 'Duck'); // false
isDateValid({}); // false
```