Lightning Experience, Experience Builder Sites, Salesforce Mobile App, Lightning Out (Beta), Standalone Lightning App, Mobile Offline
A lightning-formatted-date-time component shows formatted date and time.
This component uses the Intl.DateTimeFormat JavaScript object to format date
values. The locale set in the Salesforce user preferences determines the
default formatting. This component supports these input values.
Date object
ISO8601 formatted string
Timestamp
An ISO8601 formatted string matches one of the these patterns.
YYYY
YYYY-MM
YYYY-MM-DD
YYYY-MM-DDThh:mmTZD
YYYY-MM-DDThh:mm:ssTZD
YYYY-MM-DDThh:mm:ss.sTZD
YYYY is the year in the Gregorian calendar, MM is the month between 01 and
12, and DD is the day between 01 and 31. hh is the number of hours that
have passed since midnight, mm is the number of minutes that have passed
since the start of the hour, and ss is the number of seconds since the start
of the minute.
TZD is the time zone designator, like Z, +hh:mm or -hh:mm. To indicate
that a time is measured in Universal Time (UTC), append a Z to a time.
Default Formatting
When no attributes other than value are specified, the component uses the default “medium” date format based on the user’s locale in Salesforce.
The locale determines the order and format of the month, day, and year. For example, the English (United States) locale’s medium date format is Oct 14, 2020 and the French (France) locale’s medium date format is 14 Oct 2020. The locale doesn’t determine the time zone. Time zone is a separate setting.
To override the medium date format, pass in the short or long format to
the date-style attribute. For the previous example, the short format in English (United States) is 10/14/2020 while the long format is October 14, 2020.
The locale also determines whether to display time as 24-hour time or 12-hour time with AM and PM. You can override the locale default with the hour12 attribute. See Date and Time Display Examples for more information.
Specify optional attributes listed in the Specification tab to modify the date and time display, overriding the locale’s default formatting.
Time Zone Considerations
Two different attributes affect the time zone display.
The time-zone-name attribute specifies how to display the time zone. Set it to short to display
a code such as EST, or long to display a description such as Eastern Standard Time.
The time-zone attribute sets a particular time zone to use to display the date and time,
instead of the user device’s time zone setting. Specify a
time zone from the IANA Time Zone Database, such as
America/New_York, Europe/London, or Asia/Tokyo. You can’t use a time zone short code such as
EST to set the time-zone attribute. You can use the code UTC however, as it’s the only short code that browsers
must recognize.
When using the component to display a date only, without time, include time-zone="UTC" to ensure the correct date displays
in all time zones. This requirement is especially important if you specify a timestamp for the value. Because timestamps contain time and date information, the component converts the date to the time zone in effect on the user’s device and then displays the date.
Date and Time Display Examples
Here are some examples based on a locale of en-US.
Set the hour12 attribute using a variable. If set to false or any other string directly, the component interprets its value as true.
1import{LightningElement}from "lwc";23export default class FormattedDateTimeHour12 extends LightningElement{4 ampm = false;5}
Date and Time Stored in Salesforce
Salesforce uses the ISO8601 format YYYY-MM-DD to store date fields, which store a date without time, and includes no time zone information.
When formatting dates without time, include time-zone="UTC" to ensure the correct date displays.
Salesforce uses the ISO8601 format YYYY-MM-DDThh:mm:ss.SZ for date/time fields, which stores date/time in UTC.
Assuming a user is in the en-US locale and Pacific time zone, here are two examples for a date field with
the value 1965-04-09.
The date formatting style to use. Allowed values are short, medium, or long. Use with the time-zone, time-zone-name, or hour12 attributes only.
string
day
Allowed values are numeric or 2-digit.
DayType
era
Allowed values are narrow, short, or long.
EraType
hour
Allowed values are numeric or 2-digit.
HourMinuteSecondType
hour12
Determines whether time is displayed as 12-hour. If false, time displays as 24-hour. The default setting is determined by the user's locale. Set the value using a variable. If set to any string directly, the component interprets its value as true.
boolean
minute
Allowed values are numeric or 2-digit.
HourMinuteSecondType
month
Allowed values are 2-digit, numeric, narrow, short, or long.
MonthType
second
Allowed values are numeric or 2-digit.
HourMinuteSecondType
time-zone
The time zone for date and time display. Use this attribute only if you want to override the default, which is the time zone set on the user device. Specify a time zone from the IANA time zone database (https://www.iana.org/time-zones). For example, set the value to 'Pacific/Honolulu' to display Hawaii time. The short code UTC is also accepted.
string
time-zone-name
Allowed values are short or long. For example, the Pacific time zone would display as 'PST' if you specify 'short', or 'Pacific Standard Time' if you specify 'long.'
TimeZoneNameType
value
The value to be formatted, which can be a Date object, timestamp, or an ISO8601 formatted string.
DateValueType
weekday
Specifies how to display the day of the week. Allowed values are narrow, short, or long.