JavaScript检查Date对象是否为Invalid Date

使用Date()构造日期对象,如果传入非日期格式的字符串,仍然能构造出Date对象。

在chrome控制台

>var date = new Date("hello");
>date
Invalid Date
>typeof date
“object”
>date instanceof Date
true

示例里使用非日期格式"hello"构造Date对象

  1. 直接输出date,结果为Invalid Date
  2. 使用typeof判断date的类型,得到结果为“object”
  3. 使用instanceof检测date是否为Date类型,结果为true。

使用Date的getTime()方法,Invalid Date对象返回的是一个NaN,可以利用这点来检查Date对象是否为Invalid Date。

方法:

function isValidDate(date) {
  return date instanceof Date && !isNaN(date.getTime())
}

另外date.getTime(),也可以改为date.valueOf()

版权声明:著作权归作者所有。

相关推荐

JavaScript使用Date.parse()或new Date()解析字符串日期的格式要求

在JavaScript里,Date.parse()会接收一个字符串作为参数,根据字符串格式返回:如果字符串符合日期格式,返回自1970-01-01 00:00:00 UTC时间起的毫秒数。如果字符串不符合格式,返回NaN。new Date(str),构造函数也可以接收一个字符串作为参数,把字符串转换为表示的日期。构造的日期对象为:如果字符串符合日期格式,返回自1970

jquery检查元素是否可见

在jquery里,隐藏或显示元素可以分别使用.hide()和.show()。$("#myid").show(); $("#myid").hide(); 有时我们需要检查元素是否可见,从而根据元素的可见性做出处理。jquery里可以使用is(":visible")可见:$(element).is(":visible");

Freemarker判断列表是否为空

freemarker判断列表是否为空:判断列表对象是否为null判断列表里是否没有元素使用??判断对象是否为null<#if dataList??> 使用?size获取列表元素数,判断是否为空列表<#if dataList?? && (dataList?size > 0)> 示例<#if

Python判断字符串是否为数字

Python判断一个字符串是否为数字,可以分为两种情况考虑。字符为纯数字如果需要检测的数字为纯数字,不包括负号,小数点等,可以使用字符串的isdigit()函数来判断>>> a = "001" >>> a.isdigit() True >>> a = &q