ホームページ >ウェブフロントエンド >jsチュートリアル >ユーザーのロケールで時刻オフセットを使用して日付と時刻を表示するにはどうすればよいですか?

ユーザーのロケールで時刻オフセットを使用して日付と時刻を表示するにはどうすればよいですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-11-06 08:53:02239ブラウズ

How to Display Dates and Times in User's Locale with Time Offset?

タイム オフセットを使用してユーザーのロケールで日付/時刻を表示する

Web アプリケーションでは、異なるタイム ゾーンやロケールにまたがる日付と時刻を処理することが困難になる場合があります。要件の 1 つは、日付をユーザーの好みの形式で表示し、ローカル タイム ゾーンに調整することです。

これを実現するには、日付を UTC (協定世界時) 形式でサーバーに保存し、JavaScript を使用することをお勧めします。クライアント側でユーザーのロケールとタイムゾーンに変換します。

UTC 日付オブジェクトの作成

最初のステップは、新しい Date オブジェクトを作成し、 setUTC... メソッドを使用して、UTC で希望の日付と時刻に設定します。例:

d = new Date();
d.setUTCFullYear(2004);
d.setUTCMonth(1);
d.setUTCDate(29);
d.setUTCHours(2);
d.setUTCMinutes(45);
d.setUTCSeconds(26);

このコードは、2004 年 2 月 29 日の 2:45:26 UTC を表す Date オブジェクトを作成します。

日付/時刻のローカライズ

UTC Date オブジェクトを取得したら、さまざまな toLocale...String メソッドを使用して、それをローカライズされた文字列に変換できます。

  • toLocaleString() は、ユーザーフレンドリーな関数を返します。日付と時刻の文字列表現。
  • toLocaleDateString() は日付部分のみを返します。
  • toLocaleTimeString() は時間部分のみを返します。
console.log(d.toLocaleString());       // "Sat Feb 28 23:45:26 2004"
console.log(d.toLocaleDateString());   // "02/28/2004"
console.log(d.toLocaleTimeString());   // "23:45:26"

UTC 日付を使用し、クライアント側で変換することにより、日付が正しく表示され、ユーザーの優先ロケールとタイムゾーンが反映されるようにすることができます。

以上がユーザーのロケールで時刻オフセットを使用して日付と時刻を表示するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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