檢測無效的 JavaScript 日期實例
確定 JavaScript 中 Date 物件的有效性可能很棘手。人們可能會想要檢查物件的類型和 instanceof 運算符,但這些方法還不夠。
JavaScript 的「無效日期」概念
與某些語言不同,JavaScript 會沒有明確區分有效日期和無效日期。相反,它將無效日期表示為時間值為 NaN(非數字)的物件。
定義isValidDate 函數
檢查Date 物件是否為是否有效,我們可以使用以下步驟:
如果兩個條件都滿足滿足,則考慮 Date 物件無效。
實作
這是isValidDate 函數的實作:
function isValidDate(d) { if (Object.prototype.toString.call(d) === "[object Date]") { return !isNaN(d); } else { return false; } }
相同上下文日期物件的替代方法
相同上下文日期物件的替代方法
function isValidDate(d) { return d instanceof Date && !isNaN(d); }
>如果您只使用在相同的JavaScript上下文中,可以使用該函數的更簡單版本:
有關「無效日期」的註解需要注意的是,此函數僅驗證Date物件是否有效,而不是日期本身是否有效(例如,2013-13-32)。對於輸入日期驗證,需要不同的方法。以上是如何可靠地偵測無效的 JavaScript 日期實例?的詳細內容。更多資訊請關注PHP中文網其他相關文章!