簡體   English   中英

moment.js 帶時區的嚴格模式時間格式驗證

[英]moment.js strict mode time format validation with time zone

我正在嘗試讓 moment.js 驗證(嚴格模式)用戶輸入的帶時區的日期/時間。 例子:

moment("2018-01-20 06:30 PDT", "YYYY-MM-DD HH:mm Z", true).isValid();

這將返回 false,盡管用戶輸入的值對我來說是有效的。 如果我取消時區和“Z”令牌,它會按預期正常驗證。

我檢查了看起來最相關的 SO 帖子,但結果是空的。 我很感激任何提示。 對於這個用例,我需要以某種形式使用 moment.tz 嗎? 非常感謝。

編輯:澄清一下,“2018-01-20 06:30 PDT”是用戶手動輸入的內容,“yyyy-MM-dd HH:mm z”是應用程序所需的(ISO 8601?)日期/時間格式,我們將這些令牌傳遞給“YYYY-MM-DD HH:mm Z”以傳遞給 moment.js 進行驗證。

要使其工作而不是PDT,您可以提供時區偏移,即-0700示例 -

moment("2018-01-20 06:30 -0700", "YYYY-MM-DD HH:mm Z", true).isValid();

有關更多詳細信息,請參閱 - https://momentjs.com/docs/#/parsing/string-format

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM