Ambiente date-fns
Teste e experimente funções da biblioteca date-fns em um playground JavaScript ao vivo com saída instantânea
Entrada
Saída
Leia-me
O que é date-fns?
date-fns é uma biblioteca moderna de utilitários de datas para JavaScript que fornece ferramentas abrangentes, consistentes e confiáveis para trabalhar com datas em JavaScript. Diferente do objeto nativo Date do JavaScript, que possui muitas peculiaridades e inconsistências, o date-fns oferece uma abordagem modular e funcional para manipulação de datas. É tree‑shakeable, ou seja, você inclui apenas as funções que realmente usa, mantendo o tamanho do bundle mínimo. A biblioteca suporta mais de 200 funções que cobrem tudo, desde formatação e análise até comparação, manipulação e localização de datas.
Por que usar um playground do date-fns?
Trabalhar com datas em JavaScript pode ser complicado — fusos horários, padrões de formatação e aritmética de datas frequentemente geram resultados inesperados. Um ambiente de playground permite que você experimente as funções do date-fns em tempo real, veja a saída imediatamente e aprenda a API sem precisar configurar um projeto completo. É perfeito para testar strings de formatação, depurar cálculos de datas ou prototipar rapidamente lógica de datas antes de integrá‑la à sua aplicação.
Descrição da ferramenta
O date-fns Playground é um ambiente de codificação interativo que permite escrever e executar código JavaScript com a biblioteca completa do date-fns pré‑carregada. Toda a biblioteca date-fns está disponível através do objeto dateFns, oferecendo acesso a todas as mais de 200 funções. O código é executado automaticamente enquanto você digita (com debounce), e todas as saídas de console.log, console.warn e console.error aparecem no terminal embutido abaixo do editor. Isso o torna ideal para aprender date-fns, testar operações com datas e experimentar diferentes opções de formatação.
Exemplos
Formate a data atual:
const now = new Date();
console.log(dateFns.format(now, "MMMM do, yyyy"));
// Saída: 30 de dezembro de 2025Calcule dias entre duas datas:
const start = new Date(2025, 0, 1);
const end = new Date(2025, 11, 31);
console.log(dateFns.differenceInDays(end, start) + " days");
// Saída: 364 diasAdicione tempo a uma data:
const today = new Date();
const nextWeek = dateFns.addWeeks(today, 1);
const nextMonth = dateFns.addMonths(today, 1);
console.log("Próxima semana:", dateFns.format(nextWeek, "yyyy-MM-dd"));
console.log("Próximo mês:", dateFns.format(nextMonth, "yyyy-MM-dd"));Verifique se uma data está no passado ou no futuro:
const date = new Date(2024, 5, 15);
console.log("É passado?", dateFns.isPast(date));
console.log("É futuro?", dateFns.isFuture(date));Analise uma string de data:
const parsed = dateFns.parse("25/12/2025", "dd/MM/yyyy", new Date());
console.log(dateFns.format(parsed, "EEEE, MMMM do, yyyy"));
// Saída: quinta-feira, 25 de dezembro de 2025Recursos
- Biblioteca completa do date-fns: Acesse todas as mais de 200 funções do date-fns através do objeto
dateFns - Execução de código ao vivo: O código é executado automaticamente enquanto você digita, com debounce inteligente
- Terminal embutido: Visualize a saída do console instantaneamente sem precisar das ferramentas de desenvolvedor do navegador
- Realce de sintaxe: Realce de sintaxe JavaScript para melhor legibilidade do código
- Tratamento de erros: Erros em tempo de execução são exibidos claramente na saída do terminal
Casos de uso
- Aprender date-fns: Experimente diferentes funções e veja os resultados imediatamente sem configurar um projeto
- Teste de formatação de datas: Experimente diferentes strings de formatação para encontrar o padrão de saída exato que você precisa
- Prototipagem de cálculos de datas: Teste aritmética de datas complexa, como adicionar dias úteis, encontrar intervalos ou comparar datas
- Depuração de lógica de datas: Isole e teste trechos de código relacionados a datas dos seus projetos
- Conversões rápidas de datas: Converta entre formatos de datas ou calcule diferenças de tempo instantaneamente
Funções comuns do date-fns
| Função | Descrição | Exemplo |
|---|---|---|
format |
Formata uma data para uma string | dateFns.format(date, "yyyy-MM-dd") |
parse |
Analisa uma string para uma data | dateFns.parse("2025-01-01", "yyyy-MM-dd", new Date()) |
addDays |
Adiciona dias a uma data | dateFns.addDays(date, 7) |
subMonths |
Subtrai meses de uma data | dateFns.subMonths(date, 3) |
differenceInDays |
Obtém a quantidade de dias entre datas | dateFns.differenceInDays(dateA, dateB) |
isAfter |
Verifica se a data está após outra | dateFns.isAfter(dateA, dateB) |
isBefore |
Verifica se a data está antes de outra | dateFns.isBefore(dateA, dateB) |
startOfMonth |
Obtém o primeiro dia do mês | dateFns.startOfMonth(date) |
endOfYear |
Obtém o último instante do ano | dateFns.endOfYear(date) |
formatDistance |
Diferença de tempo em formato legível | dateFns.formatDistance(dateA, dateB) |
Referência de Tokens de Formatação
| Token | Descrição | Exemplo |
|---|---|---|
yyyy |
Ano com 4 dígitos | 2025 |
MM |
Mês com 2 dígitos | 01-12 |
MMMM |
Nome completo do mês | January |
dd |
Dia com 2 dígitos | 01-31 |
do |
Dia com ordinal | 1st, 2nd, 3rd |
EEEE |
Nome completo do dia da semana | Monday |
EEE |
Dia da semana abreviado | Mon |
HH |
Hora em formato 24h | 00-23 |
hh |
Hora em formato 12h | 01-12 |
mm |
Minutos | 00-59 |
ss |
Segundos | 00-59 |
a |
AM/PM | AM, PM |