首頁 > web前端 > js教程 > 為什麼 JavaScript 中 `new Date(2023, 9)` 回傳十月?

為什麼 JavaScript 中 `new Date(2023, 9)` 回傳十月?

Susan Sarandon
發布: 2024-10-29 09:56:02
原創
235 人瀏覽過

 Why does `new Date(2023, 9)` return October in JavaScript?

解碼JavaScript 的日期月份之謎

在JavaScript 中,Date 構造函數中的不匹配月份之謎激發了人們的好奇心。令人困惑的是,用月份值 9 構造的日期返回十月,而不是預期的九月。

深入研究 JavaScript 的內部運作原理,我們會遇到這種差異背後的基本邏輯。與常見約定不同,JavaScript 的 Date 物件定義從 0 開始的月份。因此,所提供的值 9 被解釋為第十個月,對應於十月。

這個微妙的設計決策得到了Mozilla 開發者網絡的證實( MDN):

月份

代表月份的整數值,從0 開始表示1 月到11 表示12 月。

進一步的確認來自於語言規範本身:

  1. 設mn 為?(ℝ(m) modulo 12).

這個數學公式有效地將月份值以12 為模數包裹起來,確保它始終落在0 到11 的範圍內。

因此,程式碼中提供的月份值會根據 JavaScript 的月份定義正確轉換為對應的 10 月.

以上是為什麼 JavaScript 中 `new Date(2023, 9)` 回傳十月?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板