14

我正在尝试验证日期输入,所以如果它是正确的,我处理一种方式,如果无效,我处理另一种......

var date, datestring, e;

datestring = "2012-03-222";

try {
  date = new Date(datestring);
  /* Ends up logging `Invalid Date`
  */

  console.log(date);
} catch (_error) {
  e = _error;
  /* Should come here and log `Error: Invalid Date` or the likes
  */

  console.log("Erorr: " + e);
}

我可以检查返回的字符串,看看它是否是Invalid Date,但我很惊讶这try/catch不适用于这种情况,并且担心可能有其他我不匹配的错误消息。

我应该如何处理这个问题?

4

1 回答 1

13

如果日期对象无效,它们不会引发错误。此相关问题中描述了一种方法,该方法将确定日期是否有效。

于 2013-04-03T16:30:36.820 回答