Published 2021-12-08 14:45:58

如何判断是否是日期对象?

typeof

使用typeof可以判断一个变量的类型,返回值为string,可以使用instanceof来判断一个对象是否是某个类的实例。

我们使用运算符 typeof 检查 getMonth 方法是否是一个函数,看看它是否返回function

const date = new Date(2021, 1, 1)
console.log(typeof date.getMonth === 'function')

如果返回true,说明 getMonth 是一个函数,date可能是Date实例,如果返回false,说明 getMonth 是一个字符串。

instanceof

instanceof 可以用来判断一个对象是否是某个类的实例,返回值为boolean

const date = new Date(2021, 1, 1)
console.log(date instanceof Date)

如果返回true,说明 date 是一个Date实例,如果返回false,说明 date 不是一个Date实例。

Object.prototype.toString

Object.prototype.toString 方法可以返回一个对象的字符串表示,返回值为string

const date = new Date(2021, 1, 1)
console.log(date instanceof Date)

isValid Date

判断一个对象是否是一个有效的日期对象,返回值为boolean

Object.prototype.toString