「労働者が自分の仕事をうまくやりたいなら、まず自分の道具を研ぎ澄まさなければなりません。」 - 孔子、「論語。陸霊公」
表紙 > プログラミング > JavaScript を使用して年、月、日の 2 つの日付の差を正確に計算するにはどうすればよいですか?

JavaScript を使用して年、月、日の 2 つの日付の差を正確に計算するにはどうすればよいですか?

2024 年 12 月 11 日に公開
ブラウズ:181

How Can I Accurately Calculate the Difference Between Two Dates in Years, Months, and Days Using JavaScript?

JavaScript での年、月、日の日付の違いの確認

年、月、日の 2 つの日付の違いを確認するには、次のようなことができます。 JavaScript では、1 単位 (年、月、日) の違いのみを提供するソリューションに一貫性がないことや、不正確さがあるため、困難になる可能性があります。計算.

これは、平年と閏年、および月間の正確な日数の差を考慮した、より包括的なソリューションです。

today = new Date();
past = new Date(2010, 05, 01); // Equivalent to June 1, 2010

function calcDate(date1, date2) {
  // Calculate the difference in milliseconds
  var diff = Math.floor(date1.getTime() - date2.getTime());

  // Convert milliseconds to days
  var day = 1000 * 60 * 60 * 24;
  var days = Math.floor(diff / day);

  // Calculate months and years from days
  var months = Math.floor(days / 31);
  var years = Math.floor(months / 12);

  // Format the message
  var message = date2.toDateString();
  message  = " was ";
  message  = days   " days ";
  message  = months   " months ";
  message  = years   " years ago \n";

  return message;
}

console.log(calcDate(today, past));
// Output: Tue Jun 01 2010 was 1143 days 36 months 3 years ago

このソリューションは、ミリ秒単位の差を日数に変換し、さらにその日付から月と年を導き出すことで、2 つの日付の差を正確に計算します。合計日数。

最新のチュートリアル もっと>

免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。

Copyright© 2022 湘ICP备2022001581号-3