Aller au contenu principal

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

ValueResult
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());
}