chronia
    Preparing search index...

    Function diffHours

    • Calculate the difference in complete hours between two dates.

      This function calculates the number of complete hours between two dates by comparing them at the start of each hour. Minutes, seconds, and milliseconds are ignored to ensure accurate hour counting.

      Parameters

      • dateLeft: number | Date

        The first date as a Date object or timestamp (number)

      • dateRight: number | Date

        The second date as a Date object or timestamp (number)

      Returns number

      The difference in complete hours (negative if dateLeft is before dateRight), or NaN if any input is invalid

      // Basic hour difference
      const result = diffHours(new Date(2024, 5, 15, 14, 30), new Date(2024, 5, 15, 12, 0));
      // Returns: 2

      // Minutes/seconds are ignored (same hour)
      const result = diffHours(new Date(2024, 5, 15, 14, 59), new Date(2024, 5, 15, 14, 0));
      // Returns: 0

      // Works with timestamps
      const timestamp1 = new Date(2024, 5, 15, 16, 0).getTime();
      const timestamp2 = new Date(2024, 5, 15, 14, 0).getTime();
      const result = diffHours(timestamp1, timestamp2);
      // Returns: 2

      // Negative result when first date is earlier
      const result = diffHours(new Date(2024, 5, 15, 10, 30), new Date(2024, 5, 15, 14, 30));
      // Returns: -4

      // Invalid inputs return NaN
      const result = diffHours(new Date("invalid"), new Date(2024, 5, 15, 14, 0));
      // Returns: NaN
      • Compares dates at the start of each hour for accurate hour counting
      • Minutes, seconds, and milliseconds are ignored
      • Accepts both Date objects and numeric timestamps
      • Returns NaN for: Invalid Date, NaN, Infinity, -Infinity
      • Handles day, month, and year boundaries correctly
      • Uses Math.round to ensure integer results