首页 > web前端 > js教程 > 如何可靠地检测无效的 JavaScript 日期对象?

如何可靠地检测无效的 JavaScript 日期对象?

Susan Sarandon
发布: 2024-12-13 00:54:09
原创
175 人浏览过

How Can I Reliably Detect Invalid JavaScript Date Objects?

检测 JavaScript 中的无效日期实例

确定 JavaScript Date 对象是否有效可能是一个挑战。尽管显示为对象,无效日期在字符串转换时返回“无效日期”。 instanceof Date 和 console.log 输出之间的这种差异给开发人员带来了问题。

解决方案:检查 NaN 时间值

检测无效日期的一种可靠方法是测试 NaN 作为时间值。在 Date 对象中,NaN 表示无效日期,而有效日期则具有有效的时间值。此行为记录在 ECMA-262 标准中。

代码示例:

if (Object.prototype.toString.call(d) === "[object Date]") {
  if (isNaN(d)) { // d.getTime() or d.valueOf() also works
    // Date object is invalid
  } else {
    // Date object is valid
  }
} else {
  // Not a date object
}
登录后复制

简化版本:

function isValidDate(d) {
  return d instanceof Date && !isNaN(d);
}
登录后复制

请注意,此解决方案仅验证日期对象,而不验证日期输入。无效日期(例如“2013-13-32”)与无效日期实例不同。

以上是如何可靠地检测无效的 JavaScript 日期对象?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板