ホームページ > ウェブフロントエンド > jsチュートリアル > 無効な JavaScript 日付オブジェクトを確実に検出するにはどうすればよいですか?

無効な JavaScript 日付オブジェクトを確実に検出するにはどうすればよいですか?

Susan Sarandon
リリース: 2024-12-13 00:54:09
オリジナル
173 人が閲覧しました

How Can I Reliably Detect Invalid JavaScript Date Objects?

JavaScript での無効な日付インスタンスの検出

JavaScript の Date オブジェクトが有効かどうかを判断するのは難しい場合があります。オブジェクトとして表示されるにもかかわらず、無効な日付は文字列変換時に「Invalid Date」を返します。このinstanceof Dateとconsole.log出力の不一致は、開発者にとって問題となります。

解決策: NaN時間値のチェック

無効な日付を検出するための信頼できる方法の1つは、次のとおりです。時間値として 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 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート