IRONSOFTWAREHOME
AJUDA DO NODE

Day.js npm (Como funciona para desenvolvedores)

Curtis Chau
Curtis Chau
Updated: 21 de abril de 2026

Lidar com datas e horas em JavaScript tem sido historicamente uma tarefa desafiadora devido às limitações e peculiaridades do objeto Date nativo. Embora o objeto Date nativo forneça funcionalidades básicas, muitas vezes deixa a desejar em termos de usabilidade, levando os desenvolvedores a buscar soluções mais robustas. Uma dessas soluções é o Day.js , uma biblioteca JavaScript minimalista para analisar, validar, manipular e exibir datas e horas.

Este artigo explora os recursos, benefícios e uso do Day.js, demonstrando por que ele se tornou uma escolha popular entre os desenvolvedores.

O que é Day.js?

Day.js é uma biblioteca JavaScript leve que fornece uma API simples para trabalhar com datas e horas, exibindo-as corretamente em navegadores modernos. Foi projetado para ser uma alternativa à API igualmente moderna do Moment.js, uma biblioteca amplamente utilizada, porém muito mais pesada. O Day.js tem apenas 2 kB (compactado com gzip), o que o torna uma excelente opção para aplicações que priorizam o desempenho. Apesar de seu tamanho reduzido, a biblioteca Day.js é uma alternativa ao Moment.js e oferece recursos poderosos que abrangem os casos de uso mais comuns.

Day.js npm (Como Funciona para Desenvolvedores): Figura 1 - Day.js

Principais características

Aqui estão alguns recursos principais da biblioteca Day.js:

  1. Leve: Com seu tamanho reduzido e opções avançadas de formatação, o Day.js garante que seu aplicativo permaneça rápido e eficiente.
  2. Imutáveis: Os objetos do Day.js são imutáveis, o que significa que os métodos não modificam o objeto original, mas retornam novas instâncias.
  3. API encadeável: Os métodos em Day.js podem ser encadeados, tornando o código mais legível e conciso.
  4. Internacionalização: O Day.js suporta múltiplas localidades, permitindo a fácil localização de datas e horas.
  5. Sistema de Plugins: Um sistema de plugins modular permite estender a funcionalidade do Day.js sem sobrecarregar a biblioteca principal.
  6. Compatibilidade: O Day.js foi projetado para ser compatível com a API do Moment.js, facilitando a migração de bases de código existentes.

Instalação

O Day.js pode ser facilmente instalado via npm ou yarn. Também pode ser incluído diretamente no seu arquivo HTML usando uma CDN.

Usando o npm

npm install dayjs
SHELL

Uso básico

Day.js oferece amplo suporte a fusos horários, permitindo que os desenvolvedores gerenciem o horário local sem esforço e executem tarefas de manipulação de tempo com precisão. Com seus rigorosos recursos de análise sintática, o Day.js garante a interpretação precisa de valores de data e hora, permitindo resultados confiáveis ​​e consistentes. Seja para subtrair tempo ou atualizar valores, o Day.js facilita o trabalho com datas e horários, oferecendo recursos adicionais como a criação de novas instâncias para maior flexibilidade.

Vamos analisar alguns exemplos de como trabalhar com Day.js.

1. Criando Datas

Criar uma nova instância de data em Day.js é muito simples. O exemplo a seguir demonstra isso:

const dayjs = require('dayjs');

// Current date and time
const now = dayjs();

// Specific date and time
const specificDate = dayjs('2023-05-25');
JavaScript

2. Formatação de datas

Day.js oferece uma maneira flexível e poderosa de formatar datas:

const date = dayjs('2023-05-25');

// Format date as "YYYY-MM-DD"
console.log(date.format('YYYY-MM-DD')); // 2023-05-25

// Format date as "dddd, MMMM D, YYYY"
console.log(date.format('dddd, MMMM D, YYYY')); // Thursday, May 25, 2023
JavaScript

3. Analisando Datas

Day.js consegue analisar objetos de data a partir de strings e exibir datas em vários formatos:

const date1 = dayjs('2023-05-25');
const date2 = dayjs('05/25/2023', 'MM/DD/YYYY');

// Check if the dates are the same
console.log(date1.isSame(date2)); // true
JavaScript

4. Manipulando Datas

Day.js permite a manipulação fácil de datas com sua API encadeável:

const date = dayjs('2023-05-25');

// Add one week to the date
const nextWeek = date.add(1, 'week');

// Subtract one month from the date
const lastMonth = date.subtract(1, 'month');

console.log(nextWeek.format('YYYY-MM-DD')); // 2023-06-01
console.log(lastMonth.format('YYYY-MM-DD')); // 2023-04-25
JavaScript

5. Comparando Datas

Comparar datas no Day.js é simples e intuitivo:

const date1 = dayjs('2023-05-25');
const date2 = dayjs('2023-06-01');

// Check if date1 is before date2
console.log(date1.isBefore(date2)); // true

// Check if date1 is after date2
console.log(date1.isAfter(date2)); // false

// Check if date1 is the same as date2
console.log(date1.isSame(date2)); // false
JavaScript

6. Localização

Day.js oferece suporte à internacionalização (i18n) para trabalhar com diferentes localidades:

const dayjs = require('dayjs');
const localizedFormat = require('dayjs/plugin/localizedFormat');
const localeData = require('dayjs/plugin/localeData');
const updateLocale = require('dayjs/plugin/updateLocale');

// Extend Day.js with plugins
dayjs.extend(localizedFormat);
dayjs.extend(localeData);
dayjs.extend(updateLocale);

// Set locale to French
dayjs.locale('fr');

// Display date in localized format
console.log(dayjs().format('dddd, MMMM D, YYYY')); // jeudi, mai 25, 2023

// Customize locale
dayjs.updateLocale('fr', {
    months: ['janvier', 'février', 'mars', 'avril', 'mai', 'juin', 'juillet', 'août', 'septembre', 'octobre', 'novembre', 'décembre'],
    weekdays: ['dimanche', 'lundi', 'mardi', 'mercredi', 'jeudi', 'vendredi', 'samedi']
});

// Display date in customized localized format
console.log(dayjs().format('dddd, MMMM D, YYYY')); // jeudi, mai 25, 2023
JavaScript

Usando Day.js com IronPDF para adicionar datas a PDFs em Node.js

A combinação do poder do Day.js, uma biblioteca leve de JavaScript para manipulação de datas, com o IronPDF, uma biblioteca versátil para geração e manipulação de PDFs em Node.js, permite que os desenvolvedores lidem com datas em seus documentos PDF de forma eficiente.

IronPDF - A biblioteca PDF for Node.js

IronPDF for Node.js é uma biblioteca abrangente que permite aos desenvolvedores criar, manipular e interagir com documentos PDF de forma integrada em suas aplicações Node.js Oferecendo um conjunto abrangente de recursos, o IronPDF simplifica tarefas como gerar PDFs a partir de HTML, URLs de sites ou documentos existentes, adicionar texto, imagens e elementos interativos, além de converter HTML para PDF com precisão.

Day.js npm (Como Funciona para Desenvolvedores): Figura 2 - IronPDF

Para obter informações mais detalhadas sobre o IronPDF for Node.js, visite esta página de documentação .

Começando

Primeiro, certifique-se de ter os pacotes necessários instalados. Você pode instalar o Day.js e o IronPDF via npm:

npm i @ironsoftware/ironpdf

Adicionando assinaturas digitais com datas

O IronPDF também permite adicionar assinaturas digitais a PDFs. Veja como adicionar uma assinatura com um carimbo de data/hora usando Day.js.

import dayjs from 'dayjs';
import { PdfDocument } from "@ironsoftware/ironpdf";

(async () => {
    // Import a PDF
    const pdf = await PdfDocument.open("sample.pdf");
    
    // Get the current date and time for the signature
    const signatureDate = dayjs().toDate();
    
    // Sign the PDF with a digital certificate
    await pdf.signDigitalSignature({
        certificatePath: "IronSoftware.pfx",
        certificatePassword: "123456",
        signingReason: "To show how to sign a PDF",
        signingLocation: "Chicago, USA",
        signatureDate: signatureDate,
        signatureImage: {
            SignatureImagePath: "logo.png"
        }
    });
    
    // Save the signed PDF
    await pdf.saveAs("signed_with_date.pdf");
})();
JavaScript

Aqui está o resultado:

Day.js npm (Como Funciona para Desenvolvedores): Figura 3 - Saída PDF

Você também pode usar exemplos de código prontos para uso para começar imediatamente a usar a biblioteca em sua aplicação Node.js Para obter mais informações, você também pode visitar esta página de referência da API .

Conclusão

Day.js é uma biblioteca poderosa e eficiente para gerenciar datas e horários em JavaScript. Sua natureza leve, suporte a estruturas de dados imutáveis ​​e compatibilidade com o Moment.js o tornam uma escolha atraente para desenvolvedores que buscam lidar com operações de data e hora sem adicionar sobrecarga significativa aos seus aplicativos.

Ao integrar o Day.js com o IronPDF, os desenvolvedores podem lidar facilmente com datas em seus documentos PDF. Seja para gerar PDFs a partir de URLs ou strings HTML, ou para adicionar assinaturas digitais com carimbos de data/hora, o Day.js oferece uma maneira simples e poderosa de gerenciar datas. Essa combinação aprimora a funcionalidade de seus aplicativos Node.js , permitindo um gerenciamento robusto e dinâmico de documentos PDF.

Experience IronPDF's starting at $999. Veja por si mesmo o quão poderosas podem ser a geração e a manipulação de PDFs. Experimente hoje mesmo!

Curtis Chau
Redator Técnico

Curtis Chau é bacharel em Ciência da Computação (Universidade Carleton) e se especializa em desenvolvimento front-end, com experiência em Node.js, TypeScript, JavaScript e React. Apaixonado por criar interfaces de usuário intuitivas e esteticamente agradáveis, Curtis gosta de trabalhar com frameworks modernos e criar manuais bem estruturados e visualmente atraentes.

...
Leia mais

Artigos relacionados

Key in blue circle

Obtenha sua chave de avaliação gratuita de 30 dias instantaneamente.

Your trial license will be sent to your email address

Sem limitações. 100% desbloqueado. Sem cartão de crédito.

bullet_checkedNão é necessário cartão de crédito nem criação de conta.Sem limitações. 100% desbloqueado. Sem cartão de crédito.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
Agende sua demonstração ao vivo gratuita.
Booking Badge

Aprovado por milhões de engenheiros em todo o mundo.

Logotipos dos clientes da Iron Software
Agende sua consulta sem compromisso.
Preencha o formulário abaixo ou envie um e-mail para sales@ironsoftware.com
Os seus dados serão sempre mantidos em sigilo.
Aprovado por milhões de engenheiros em todo o mundo.
Logotipos dos clientes da Iron Software
Obtenha sua chave de avaliação gratuita de 30 dias instantaneamente.
Não é necessário cartão de crédito nem criação de conta.