なぜjavascriptのgetMonthは0からカウントし、getDateは1からカウントするのですか?
2023-08-13 11:34:05
質問
この質問は、純粋に私の好奇心を満たすためのものです。
JavaScriptのDateオブジェクトで、あなたが呼ぶとき
getMonth()
を呼び出すと、月が返されますが、0から数えます。
0 = January
1 = February
...
しかし
getDate()
を呼び出すと、1 からカウントを開始します。
1 = 1
2 = 2
...
なぜ矛盾しているのか?
どのように解決するのですか?
名前の配列で参照するのが簡単だからだと思いますが、つまりは
var months = ["January", "February", "March", "April", "May", "June", "July",
"August", "September", "October", "November", "December"];
var d = new Date();
var namedMonth = months[d.getMonth()];
もし
getMonth()
が返された場合
1-12
を返した場合、プログラマは
d.getMonth()-1
を実行しなければならなくなります。
月の日はそれ自体、特定のquot;names"を持っていません。その
getDate()
は
1-(28-31)
. 通常は番号で参照するのみです。
と同じ概念で
getMonth()
が適用されます。
getDay()
も同様で、これは
0-6
を返します。
var days = ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"];
var namedDay = days[d.getDay()];
これだけだと、次のようなものが返ってきます。
console.log("Month: month[" + d.getMonth() + "]: " + namedMonth);
//Month: month[3]: April
console.log("Day: days[" + d.getDay() + "]: " + namedDay);
// Day: days[4] : Thursday
関連
-
[解決済み] JavaScriptで "use strict "は何をするのか、その根拠は?
-
[解決済み] なぜGoogleはJSONレスポンスにwhile(1);を前置するのでしょうか?
-
[解決済み] event.preventDefault() vs. return false
-
[解決済み] 私のJavaScriptコードは "No 'Access-Control-Allow-Origin' header is present on requested resource "というエラーを受け取りますが、Postmanはそうならないのはなぜですか?
-
[解決済み] Node.jsを使うタイミングをどう判断するか?
-
[解決済み] HTMLマークアップのどこに<script>タグを記述すればよいですか?
-
[解決済み] varキーワードの目的と、どのような場合に使用する(または省略する)べきですか?
-
[解決済み] 日付から月名を取得する
-
[解決済み】オブジェクトからプロパティを削除する(JavaScript)
-
[解決済み] モデルフェッチ時に1をtrueに、0をfalseに変換する方法
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】JavaScriptのDateコンストラクタで、月の引数が0から11の範囲にあるのはなぜですか?
-
[解決済み] JSのDateからDay名
-
[解決済み] JavaScript で範囲を作成する - 奇妙な構文
-
[解決済み] <Enter>でjQuery UIダイアログを送信する
-
[解決済み] Angularjs - 現在の日付を表示する
-
[解決済み] React js 親コンポーネントから子コンポーネントの状態を変更する
-
[解決済み] javascript includes() 大文字小文字を区別しない
-
[解決済み] JSHintの'+'前の改行不良の説明
-
[解決済み] HTML要素にスクロールバーがあるかどうかをチェックする
-
[解決済み] querySelectorAllがない場合、ライブラリを使用せずに属性で要素を取得する?