ホームページ  >  記事  >  ウェブフロントエンド  >  Nodejs がタイムスタンプを処理する方法

Nodejs がタイムスタンプを処理する方法

王林
王林オリジナル
2023-05-11 12:39:362190ブラウズ

1. タイムスタンプとは何ですか?

タイムスタンプ (タイムスタンプ) は、「UNIX タイムスタンプ」とも呼ばれ、日付と時刻をマークするために使用されるデジタル形式です。1970 年 1 月からの秒数を表します。 1日0時0分0秒。タイムスタンプは、異なるコンピュータ システム間で時刻情報を交換するためによく使用され、プログラムのタイミングやコンピュータの目覚まし時計にも広く使用されています。

Node.js では、組み込みの Date オブジェクトを使用してタイムスタンプを処理できます。 Date オブジェクトは、日付と時刻を取得および処理するための一連のメソッドを提供します。以下に、一般的に使用されるメソッドをいくつか紹介します。

2. 現在のタイムスタンプを取得する

Date オブジェクトの getTime() メソッドを使用して、現在の時刻のタイムスタンプを取得できます。getTime() メソッドは、1 月 1 日以降 00 を返します。 1970: 00:00 からのミリ秒数については、1000 で割って秒数を取得できます。コードは次のとおりです:

let timestamp = new Date().getTime() / 1000;
console.log(timestamp);

出力結果は 10 桁の数値になります。例: 1623891191。

3. タイムスタンプを日付に変換する

タイムスタンプを日付に変換する必要がある場合がありますが、Date オブジェクトには、この機能を実現するための fromEpochTime() メソッドが用意されています。 fromEpochTime() メソッドはタイムスタンプをパラメータとして受け取り、新しい Date オブジェクトを返します。コードは次のとおりです:

let timestamp = 1623891191;
let date = new Date(0); // 参数0代表1970年1月1日00:00:00
date.setUTCSeconds(timestamp);
console.log(date.toLocaleDateString()); // 输出日期,例如:2021/6/17
console.log(date.toLocaleTimeString()); // 输出时间,例如:8:53:11 AM
console.log(date.toLocaleString()); // 输出日期和时间,例如:2021/6/17 8:53:11 AM

上記のコードでは、まず Date オブジェクトを作成し、それを 1970 年 1 月 1 日に初期化します。 . 00:00:00。次に、setUTCSeconds() メソッドを使用してこの Date オブジェクトにタイムスタンプを設定し、toLocaleDateString()、toLocaleTimeString()、および toLocaleString() メソッドを使用して日付と時刻の文字列を取得します。

4. 日付をタイムスタンプに変換する

日付をタイムスタンプに変換する必要がある場合は、Date オブジェクトの getTime() メソッドを使用できます。 getTime() メソッドは、1970 年 1 月 1 日の 00:00:00 からのミリ秒数を返します。秒数を取得するには、それを 1000 で割ることができます。コードは次のとおりです:

let date = new Date('2021/6/17 8:53:11 AM');
let timestamp = date.getTime() / 1000;
console.log(timestamp);

出力結果は 10 桁の数値である必要があります (例: 1623891191)。

5. タイムスタンプと日付の計算

例: 2 つのタイムスタンプ間の時間差を計算する、または特定のタイムスタンプ間の時間を計算するなど、タイムスタンプを計算する必要がある場合があります。時間。この機能を実現するには、Date オブジェクトの set および get series メソッドを使用できます。次に例を示します:

let timestamp1 = 1623891191;
let date = new Date(0); // 参数0代表1970年1月1日00:00:00
date.setUTCSeconds(timestamp1);
console.log(date.toLocaleString()); // 输出:2021/6/17 8:53:11 AM

let timestamp2 = timestamp1 + 60 * 60 * 24 * 7; // 在timestamp1的基础上加上7天
date = new Date(0);
date.setUTCSeconds(timestamp2);
console.log(date.toLocaleString()); // 输出:2021/6/24 8:53:11 AM

let diff = timestamp2 - timestamp1; // 计算两个时间戳之间的时间差,单位为秒
console.log(diff); // 输出:604800

上記のコードでは、まずタイムスタンプを Date オブジェクトに変換し、toLocaleString( ) メソッド 出力文字列表現。次に、60 60 24 * 7 (7 日間の秒数) を加算して別のタイムスタンプを計算し、それを Date オブジェクトに変換して、文字列表現を再度出力しました。最後に、単純な減算によって 2 つのタイムスタンプ間の時間差を取得します。

6. 概要

Node.js の Date オブジェクトは、タイムスタンプ、日付、時刻間の変換と計算を簡単に処理できる豊富な時間処理関数を提供します。実際の開発では、これらのメソッドを使用して時間関連の操作を処理する必要があることが多いため、Date オブジェクトの使用方法を学ぶことが非常に重要です。

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

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