@hebcal/hdate
    Preparing search index...

    Function getYahrzeitHD

    • Calculates yahrzeit, the anniversary of a death, and returns it as a SimpleHebrewDate ({yy, mm, dd}). hyear must be after original date of death. Returns undefined when requested year preceeds or is same as original year.

      Hebcal uses the algorithm defined in "Calendrical Calculations" by Edward M. Reingold and Nachum Dershowitz.

      This is not the same calculation as a birthday. When the original date does not exist in the target year, a yahrzeit falls earlier — on the last day of the preceding month — because the anniversary should not be observed later than the day itself. A birthday in the same situation is postponed to the first of the following month. See getBirthdayHD for the contrast.

      The two also differ in whether the original year is a legal hyear. A yahrzeit is by definition an anniversary of a death, so the earliest one that exists is the first: the day of the death itself is not a yahrzeit, and a "zeroth" yahrzeit has no meaning to return. hyear must therefore be strictly after the year of death, and this function returns undefined otherwise. A birth date, by contrast, is a real and meaningful day in its own right, so getBirthdayHD accepts the year of birth and hands back the original date.

      The customary anniversary date of a death is more complicated and depends also on the character of the year in which the first anniversary occurs. There are several cases:

      • If the date of death is Marcheshvan 30, the anniversary in general depends on the first anniversary; if that first anniversary was not Marcheshvan 30, use the day before Kislev 1.
      • If the date of death is Kislev 30, the anniversary in general again depends on the first anniversary — if that was not Kislev 30, use the day before Tevet 1.
      • If the date of death is Adar II, the anniversary is the same day in the last month of the Hebrew year (Adar or Adar II).
      • If the date of death is Adar I 30, the anniversary in a Hebrew year that is not a leap year (in which Adar only has 29 days) is the last day in Shevat.
      • In all other cases, use the normal (that is, same month number) anniversary of the date of death. [Calendrical Calculations p. 113]

      The date argument is never modified, so a single original date can be reused to generate a run of years.

      Parameters

      • hyear: number

        Hebrew year in which to find the anniversary

      • date: AnniversaryDate

        Gregorian or Hebrew date of death

      Returns SimpleHebrewDate | undefined

      anniversary occurring in hyear, or undefined when hyear is on or before the original year

      yahrzeit for the same result as an HDate instance

      import {getYahrzeitHD} from '@hebcal/hdate';
      const dt = new Date(2014, 2, 2); // 30 Adar I 5774
      getYahrzeitHD(5780, dt); // {yy: 5780, mm: 11, dd: 30} (30 Sh'vat)