May depend on your locale but I found if dayPeriod is omitted all-together then it outputs "AM" or "PM".
new Intl.DateTimeFormat('en', { hourCycle: 'h12', hour: "2-digit", minute: "2-digit", }).format(new Date()) // => "12:48 AM"