ホームページ >ウェブフロントエンド >jsチュートリアル >UTC エポック タイムスタンプをローカル日付に変換するにはどうすればよいですか?

UTC エポック タイムスタンプをローカル日付に変換するにはどうすればよいですか?

Susan Sarandon
Susan Sarandonオリジナル
2024-11-15 07:00:021054ブラウズ

How to Convert UTC Epoch Timestamps to Local Dates?

UTC エポックをローカル日付に変換する

問題

UTC エポック タイムスタンプをローカル日付オブジェクトに変換するのは難しい場合があります。標準の Date() コンストラクターはエポックをローカルとして解釈するため、タイムスタンプが実際には UTC である場合に誤った結果が生じます。 UTC オブジェクトを作成し、setTime() を使用して時刻を調整したり、UTC オフセットを取得したりしようとしましたが、失敗したことが判明しました。

解決策

UTC エポックをローカル日付に変換する、より簡単な解決策が存在します。日付を直接操作する代わりに、新しい日付をエポック (0 として表される) に設定し、UTC エポック単位を追加します。たとえば、秒単位の UTC エポック (例: 1234567890) を現地時間に変換するには:

var utcSeconds = 1234567890;
var d = new Date(0); // Sets the date to the epoch
d.setUTCSeconds(utcSeconds);

結果の日付 d は、UTC エポック タイムスタンプと同等の現地時間を表すようになります。この例では、日付は次のようになります: Fri Feb 13 2009 18:31:30 GMT-0500 (EST).

以上がUTC エポック タイムスタンプをローカル日付に変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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