JavaScript Date オブジェクトは 1 日ずれていますか
JavaScript Date オブジェクトは、日付文字列を操作するときに特異な動作をする可能性があり、その結果、日付が不正確になる可能性があります。 。この動作は、入力文字列の形式とブラウザの現在のロケール設定によって異なる場合があります。
文字列形式の問題
日付文字列から新しい Date オブジェクトを作成する場合、文字列の形式は、結果の日付に影響を与える可能性があります。たとえば、次の文字列について考えてみましょう。
2011-09-24
この文字列をそのまま使用して Date オブジェクトを作成すると、1 日ずれた日付が返される可能性があります。ただし、ハイフン (「-」) をスラッシュ (「/」) に変更すると、結果の日付は正確になります。
2011/09/24
日付/時刻文字列
日付文字列に時間コンポーネントが含まれている場合 (例: "2011-09-24T00:00:00")、ハイフンとスラッシュのトリックは機能しなくなる可能性があります。この場合、正規表現を使用して時刻コンポーネントを削除できます。
new Date("2011-09-24T00:00:00".replace(/-/g, '/').replace(/T.+/, ''));
Separate Arguments
Date オブジェクトを作成するもう 1 つの方法は、別の引数を指定することです。年、月、日 (オプションで時、分、秒、ミリ秒も指定可能)。この方法は、特定の日付を計算したり、特定のロケールで日付を操作したりする場合に役立ちます。
たとえば、次のコードは 2011 年の最初と最後の日を取得します。
new Date(2011, 0); // First day of 2011 new Date((2011 + 1), 0, 0); // Last day of 2011
この場合、月は 0 から始まるので、「0」は 1 月を表します。
これらの特性を理解することで、誤った日付を回避し、効率的に作業できるようになります。 JavaScript の日付を使用します。
以上が私の JavaScript 日付オブジェクトが 1 日ずれているのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。