日付文字列の有効性を検証することは、誤ったデータ入力を防ぐために非常に重要です。これは、「2/30/2011」などの潜在的なエラーを含む日付を扱う場合に特に重要です。
日付文字列を効果的に検証するには、次のアプローチを検討してください。
日付文字列を変換するJavaScript Date オブジェクトへの変換:
var d = new Date(bits[2], bits[1] - 1, bits[0]);
Date オブジェクトは、指定されたパラメーターに基づいて日付を表します。これにより、有効性についてさらなるチェックを実行できます。
d オブジェクトが存在し、オブジェクトの月インデックス (d.getMonth() 1) が指定された月 (bits[1]) と一致する場合、日付文字列は有効であると考えられます:
return d && (d.getMonth() + 1) == bits[1];
この検証方法の有用性を実証するには、次のことを考慮してください。例:
['0/10/2017','29/2/2016','01/02'].forEach(function(s) { console.log(s + ' : ' + isValidDate(s)) })
出力:
0/10/2017 : false 29/2/2016 : true 01/02 : true
ご覧のとおり、検証ロジックは、日付が存在しないため、「0/10/2017」を無効な日付として正しく識別します。値は 0 ですが、「29/2/2016」と「01/02」は有効な日付として認識されます。
以上がエラーを防ぐために JavaScript で日付文字列を検証するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。