1. ホーム
  2. javascript

[解決済み] 日付が有効かどうかチェックする

2022-04-21 10:04:41

質問

以下はシナリオです。

私は String の日付と、異なる日付の書式を指定することができます。例:

日付:2016-10-19

dateFormat: "DD-MM-YYYY"。

この日付が有効な日付かどうか確認したいのですが。

私は以下のことを試してみました。

var d = moment("2016-10-19",dateFormat);

d.isValid() が返されます。 false を毎回使用します。Moment.jsは指定された書式で日付をパースしないのでしょうか?

次に、日付の書式を DD-MM-YYYY を先に作って、それをMoment.jsに渡しています。

var d = moment("2016-10-19").format(dateFormat);
var date = moment(d, dateFormat);

現在 date.isValid() は望ましい結果を与えてくれますが、ここではMoment.jsの日付オブジェクトが2回作成されています。どうすればこれを避けることができますか?より良い解決策はありますか?

参考までに私は dateFormat .

解決方法は?

解決策を見つけることができました。 取得する日付がISO形式なので、dateFormatを渡す必要がなく、momentに日付を指定するだけで検証されます。

var date = moment("2016-10-19");

そして date.isValid() は期待通りの結果をもたらします。