ホームページ  >  記事  >  ウェブフロントエンド  >  JavaScriptのタイムスタンプを日時に変換する

JavaScriptのタイムスタンプを日時に変換する

WBOY
WBOYオリジナル
2023-05-15 19:38:06987ブラウズ

JavaScript は、Web フロントエンド開発やサーバーサイド プログラミングで広く使用されている強力なスクリプト言語です。タイムスタンプと日時の間の変換は、JavaScript では非常に一般的な操作です。

タイムスタンプは、1970 年 1 月 1 日 00:00:00 UTC (協定世界時) からのミリ秒数です。 JavaScript では、次のコードを使用して現在のタイムスタンプを取得できます。

var timestamp = new Date().getTime(); // 获取当前时间戳

ただし、タイムスタンプは直感的ではないため、人間が理解できるように日時形式に変換する必要があることがよくあります。 JavaScript には、タイムスタンプと日時の間で変換するためのメソッドがいくつか用意されています。以下にそれぞれの方法を紹介します。

タイムスタンプを日付と時刻に変換する

タイムスタンプを日付と時刻に変換するには、Date オブジェクトの toLocaleString() メソッドを使用します。 。このメソッドは、現地時間に基づいた文字列を yyyy/MM/dd HH:mm:ss の形式で返します。コードは次のとおりです:

var timestamp = 1626194523854; // 假设时间戳为 2021/07/14 12:15:23.854
var datetime = new Date(timestamp).toLocaleString('zh-CN', {hour12: false});
console.log(datetime); // 输出:2021/7/14 12:15:23

このうち、toLocaleString() メソッドは 2 つのパラメータを受け入れます:

  • 最初のパラメータは地域 (ロケール) コードを指定します。 、ここで使用する zh-CN は中国を意味します。時間の形式は地域によって異なります。
  • 2 番目のパラメーターはオブジェクトとして渡され、日付と時刻の形式を設定するために使用されます。 {hour12: false} 12 時間制の代わりに 24 時間制が使用されることを示します。

このようにして、タイムスタンプを日付と時刻の形式に変換することができました。

日付と時刻をタイムスタンプに変換する

日付と時刻をタイムスタンプに変換するには、Date オブジェクトの getTime() メソッドを使用します。 。このメソッドは、1970 年 1 月 1 日 00:00:00 UTC (協定世界時) からのミリ秒数を返します。コードは次のとおりです。

var datetime = '2021-07-14T12:15:23.854Z'; // 假设日期时间为 2021/07/14 12:15:23.854 UTC
var timestamp = new Date(datetime).getTime();
console.log(timestamp); // 输出:1626292523854

このうち、日付と時刻は ISO 8601 標準形式、つまり yyyy-MM-ddTHH:mm:ss.sssZ を満たす必要があります。この形式では、Z はタイム ゾーンが UTC であることを示しますが、他のタイム ゾーンも指定できます。

このようにして、日付と時刻をタイムスタンプに変換することができました。

パフォーマンスに関する考慮事項

上記のコードはシンプルで理解しやすいように見えますが、Date オブジェクトが作成されるたびに一定のパフォーマンスが発生することに注意してください。特にループ内または頻繁に呼び出される場合のオーバーヘッド。パフォーマンスを向上させるために、次のように、タイムスタンプを変数としてキャッシュし、必要な場合にのみ変換するちょっとしたトリックを使用できます。

var timestamp = 1626194523854; // 假设时间戳为 2021/07/14 12:15:23.854
var datetime = null; // 初始值为 null,表示尚未转换
var getDatetime = function() {
  if (datetime === null) {
    datetime = new Date(timestamp).toLocaleString('zh-CN', {hour12: false});
  }
  return datetime;
};
console.log(getDatetime()); // 输出:2021/7/14 12:15:23

この方法では、getDatetime() の最初の呼び出しで 、タイムスタンプ変換操作が実行され、結果が datetime 変数にキャッシュされます。後続の呼び出しでは、キャッシュされた結果を直接返すだけです。これにより、タイムスタンプ変換操作の繰り返しが回避され、コードのパフォーマンスが向上します。

つまり、JavaScript におけるタイムスタンプと日付時刻の間の変換は非常に重要であり、非常に一般的です。正しい変換方法を習得し、コードのパフォーマンスに注意を払えば、さまざまな時間変換のニーズに簡単に対応できます。

以上がJavaScriptのタイムスタンプを日時に変換するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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