ホームページ >ウェブフロントエンド >jsチュートリアル >JavaScript で 2 つの日付の差を正確に計算するにはどうすればよいですか?

JavaScript で 2 つの日付の差を正確に計算するにはどうすればよいですか?

Barbara Streisand
Barbara Streisandオリジナル
2024-12-27 13:32:11667ブラウズ

How to Accurately Calculate the Difference Between Two Dates in JavaScript?

JavaScript での日付の違いの計算: 包括的なソリューション

JavaScript で日付を操作する場合、2 つの特定の日付の差を判断することが一般的になりますタスク。単純な引き算は単純なアプローチのように思えるかもしれませんが、これは 1 日の端数を考慮するものではありません。日数全体の差を正確に取得するには、別の方法が必要です。

問題:

日数を計算しようとする次のコード スニペットを考えてみましょう。 getDate() メソッドを使用して 2 つの日付の間を取得します:

var date1 = new Date('7/11/2010');
var date2 = new Date('12/12/2010');
var diffDays = date2.getDate() - date1.getDate(); 
alert(diffDays)

ただし、このアプローチでは月と年を考慮できません。

解決策:

丸一日の日付の差を正確に判断するには、より包括的な計算が必要です:

const date1 = new Date('7/13/2010');
const date2 = new Date('12/15/2010');
const diffTime = Math.abs(date2 - date1);
const diffDays = Math.floor(diffTime / (1000 * 60 * 60 * 24)); 
console.log(diffTime + " milliseconds");
console.log(diffDays + " days");
  1. 時差の計算: 最初のステップでは、前の時差を減算します。日付は後の日付から変更され、ミリ秒単位の時間差が生じます。これは、正の値を保証する Math.abs を使用して実現されます。
  2. 日数に変換: 日数の差を取得するには、時差を 1 秒間のミリ秒数で割ります。日、つまり 1000 x 60 x 60 x 24。
  3. 床結果: Math.floor を使用すると、端数の日数が破棄され、整数の日数が得られます。

このアプローチでは、2 つの日付間の丸 1 日の差が正確に計算され、信頼性が高く柔軟な結果が得られます。さまざまなシナリオに対応するソリューション。

以上がJavaScript で 2 つの日付の差を正確に計算するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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