isDate()
isDate(
value):value is Date
Checks if a value is a Date instance.
remarque
Does not validate if the Date is valid (use isValidDate for that).
Parameters
value: unknown
The value to check.
Returns: value is Date
true if the value is a Date, false otherwise.
Since
2.0.0
Example
isDate(new Date()); // => true
isDate(new Date('invalid')); // => true (still a Date instance)
isDate('2024-01-01'); // => false
isDate(Date.now()); // => false (number)
How it works?
Type guard that checks if a value is a Date instance.
Type Narrowing
Common Checks
| Value | Result |
|---|---|
new Date() | true |
new Date('invalid') | true (Invalid Date is still Date) |
Date.now() | false (number) |
'2024-01-01' | false |
1704067200000 | false |
Note
isDate returns true for Invalid Date. Use !isNaN(date.getTime()) to check validity.
Use Cases
Validate timestamps 📌
Ensure a value is a valid Date object before formatting or comparison. Essential for time-sensitive logic and scheduling applications.
if (isDate(timestamp) && !isNaN(timestamp.getTime())) {
console.log(timestamp.toISOString());
}
true
false (number)