Formatação de datas com pipes no Angular
Com o pipe DatePipe podemos
definir um formato específico para a data exibida.
Este pipe pode aceitar os seguintes
parâmetros para o formato de exibição da data:
| Formato | Equivalente | Exemplo (para localidade en-US) |
|---|---|---|
'short' |
'M/d/yy, h:mm a' |
12/31/25, 3:00 AM |
'medium' |
'MMM d, y, h:mm:ss a' |
Dec 31, 2025, 3:00:00 AM |
'long' |
'MMMM d, y, h:mm:ss a z' |
December 31, 2025 at 3:00:00 AM GMT+3 |
'full' |
'EEEE, MMMM d, y, h:mm:ss a zzzz' |
Wednesday, December 31, 2025 at 3:00:00 AM GMT+03:00 |
'shortDate' |
'M/d/yy' |
12/31/25 |
'mediumDate' |
'MMM d, y' |
Dec 31, 2025 |
'longDate' |
'MMMM d, y' |
December 31, 2025 |
'fullDate' |
'EEEE, MMMM d, y' |
Wednesday, December 31, 2025 |
'shortTime' |
'h:mm a' |
3:00 AM |
'mediumTime' |
'h:mm:ss a' |
3:00:00 AM |
'longTime' |
'h:mm:ss a z' |
3:00:00 AM GMT+3 |
'fullTime' |
'h:mm:ss a zzzz' |
3:00:00 AM GMT+03:00 |
Exemplos
Vamos ver o funcionamento do pipe com exemplos.
Para isso, na classe do componente, definiremos
uma propriedade myDate, na qual registraremos
a data:
export class AppComponent {
public myDate: number = Date.parse('2025-12-31');
}
Exemplo
Vamos exibir nossa data sem passar nenhum parâmetro para o pipe:
<div>
{{ myDate | date }}
</div>
Resultado do código executado:
<div>Dec 31, 2025</div>
Exemplo
Agora vamos exibir a data no formato curto:
<div>
{{ myDate | date:'shortDate' }}
</div>
Resultado do código executado:
<div>12/31/25</div>
Exemplo
Vamos exibir nossa data e também descobrir em que dia da semana ela cai:
<div>
{{ myDate | date:'fullDate' }}
</div>
Resultado do código executado:
<div>Wednesday, December 31, 2025</div>
Tarefas práticas
Dada a data:
public myDate: number = Date.parse('2025-01-02');
Formate-a da seguinte maneira:
'Jan 2, 2025'
Formate a data da tarefa anterior da seguinte maneira:
'1/2/25, 3:00 AM'
Formate a data da seguinte maneira:
'1/2/25'
Formate a data da seguinte maneira:
'January 2, 2025 at 3:00:00 AM GMT+3'
Formate a data da seguinte maneira:
'Thursday, January 2, 2025'