ホームページ >ウェブフロントエンド >jsチュートリアル >JavaScript で日付を yyyy-mm-dd のようにフォーマットするにはどうすればよいですか?

JavaScript で日付を yyyy-mm-dd のようにフォーマットするにはどうすればよいですか?

Susan Sarandon
Susan Sarandonオリジナル
2024-12-17 21:37:10386ブラウズ

How Can I Format a Date in JavaScript as yyyy-mm-dd?

JavaScript での日付の書式設定: yyyy-mm-dd 形式の実現

JavaScript での日付の書式設定は、特に次のことを行う場合に困難になることがあります。特定のフォーマットを実現します。たとえば、「Sun May 11,2014」という形式の日付があり、それを「2014-05-11」に変換するにはどうすればよいでしょうか?

1 つの方法は、次のとおりです。提供されたコードには、日付をそのコンポーネントに分割することが含まれています。ただし、この方法では日付を目的の形式に変換できません。この問題を修正するには、JavaScript の組み込み toISOString メソッドを利用したより効率的な方法を利用できます。

toISOString メソッドは、日付オブジェクトを ISO 8601 形式の文字列表現に変換します。これはたまたま「yyyy-」になります。 mm-ddThh:mm:ss.sssZ。」日付部分のみを抽出するには、文字「T」を区切り文字として使用して文字列を分割し、最初の部分を取得します。

let yourDate = new Date();
yourDate.toISOString().split('T')[0];

このメソッドは、日付を「yyyy-mm-dd」形式で返します。 " 形式で、元の要件を満たしています。

アドレス指定タイムゾーン相違点

toISOString メソッドではタイムゾーンの違いが考慮されないことに注意することが重要です。これを考慮するには、ユーザーの現地時間と日付オブジェクトのタイムゾーンの間のオフセットに基づいて修正する必要があります。

const offset = yourDate.getTimezoneOffset();
yourDate = new Date(yourDate.getTime() - (offset * 60 * 1000));
return yourDate.toISOString().split('T')[0];

この修正により、返される日付は "yyyy-" になります。 mm-dd" 形式。ユーザーのローカル タイム ゾーンに合わせて調整されます。

以上がJavaScript で日付を yyyy-mm-dd のようにフォーマットするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。