AIDE SUR LES NœUDS

Day.js npm (Comment cela fonctionne pour les développeurs)

La gestion des dates et heures en JavaScript a historiquement été une tâche difficile en raison des limitations et des particularités de l'objet Date intégré. Bien que l'objet Date natif offre des fonctionnalités de base, il est souvent insuffisant en termes d'utilisabilité, ce qui pousse les développeurs à rechercher des solutions plus robustes. Une telle solution est Day.js, une bibliothèque JavaScript minimaliste pour l'analyse, la validation, la manipulation et l'affichage des dates et des heures.

Cet article explore les fonctionnalités, les avantages et l'utilisation de Day.js, démontrant pourquoi il est devenu un choix populaire parmi les développeurs.

Qu'est-ce que Day.js ?

Day.js est une bibliothèque JavaScript légère qui fournit une API simple pour manipuler les dates et les heures afin d'afficher correctement la date et l'heure dans les navigateurs modernes. Il a été conçu pour être une alternative à la même API moderne Moment.js, une bibliothèque largement utilisée mais bien plus lourde. Day.js ne pèse que 2kB (compressé), ce qui en fait un excellent choix pour les applications soucieuses des performances. Bien que sa taille soit réduite, la bibliothèque Day.js est une alternative à Moment.js et offre des fonctionnalités puissantes qui couvrent les cas d'utilisation les plus courants.

Day.js npm (Comment ça fonctionne pour les développeurs) : Figure 1 - Day.js

Caractéristiques principales

Voici quelques fonctionnalités clés de la bibliothèque Day.js :

  1. Léger : Grâce à sa petite taille et à ses options de formatage avancées, Day.js garantit que votre application reste rapide et efficace.

  2. Immutable : Les objets Day.js sont immuables, ce qui signifie que les méthodes ne modifient pas l'objet original, mais retournent plutôt de nouvelles instances.

  3. API enchaînable : Les méthodes dans Day.js peuvent être enchaînées, rendant le code plus lisible et concis.

  4. Internationalisation : Day.js prend en charge plusieurs locales, ce qui permet de localiser facilement les dates et les heures.

  5. Système de plugins : Un système de plugins modulaire vous permet d'étendre la fonctionnalité de Day.js sans alourdir la bibliothèque principale.

  6. Compatibilité : Day.js est conçu pour être compatible avec l'API de Moment.js, ce qui facilite la migration des bases de code existantes.

Installation

Day.js peut être facilement installé via npm ou yarn. Il peut également être inclus directement dans votre fichier HTML en utilisant un CDN.

Utilisation de npm

npm install dayjs
npm install dayjs
SHELL

Utilisation de base

Day.js offre un support étendu pour les fuseaux horaires, permettant aux développeurs de gérer facilement l'heure locale et d'effectuer des tâches de manipulation du temps avec précision. Avec ses capacités de parsing strictes, Day.js garantit une interprétation précise des valeurs de date et d'heure, permettant des résultats fiables et cohérents. Que ce soit pour soustraire du temps ou mettre à jour des valeurs, Day.js facilite le travail avec les dates et les heures, offrant des fonctionnalités supplémentaires comme la création de nouvelles instances pour une flexibilité accrue.

Examinons quelques exemples de travail avec Day.js.

1. Création de dates

Créer une nouvelle instance de date dans Day.js est simple. L'exemple suivant le démontre :

const dayjs = require('dayjs');
// Current date and time
const now = dayjs();
// Specific date and time
const specificDate = dayjs('2023-05-25');
js
JAVASCRIPT

2. Formatage des dates

Day.js offre une nouvelle instance flexible et puissante pour formater les dates :

const date = dayjs('2023-05-25');
console.log(date.format('YYYY-MM-DD')); // 2023-05-25
console.log(date.format('dddd, MMMM D, YYYY')); // Thursday, May 25, 2023
js
JAVASCRIPT

3. Analyse des dates

Day.js peut analyser des objets de date à partir de chaînes et afficher les dates dans divers formats :

const date1 = dayjs('2023-05-25');
const date2 = dayjs('05/25/2023', 'MM/DD/YYYY');
console.log(date1.isSame(date2)); // true
js
JAVASCRIPT

4. Manipulation des dates

Day.js permet une manipulation facile des dates grâce à son API chaînable :

const date = dayjs('2023-05-25');
const nextWeek = date.add(1, 'week'); // Updated Value
const lastMonth = date.subtract(1, 'month'); // Updated Value
console.log(nextWeek.format('YYYY-MM-DD')); // 2023-06-01
console.log(lastMonth.format('YYYY-MM-DD')); // 2023-04-25
js
JAVASCRIPT

5. Comparaison de dates

Comparer les dates dans Day.js est simple et intuitif :

const date1 = dayjs('2023-05-25');
const date2 = dayjs('2023-06-01');
console.log(date1.isBefore(date2)); // true
console.log(date1.isAfter(date2)); // false
console.log(date1.isSame(date2)); // false
js
JAVASCRIPT

6. Localisation

Day.js prend en charge l'internationalisation (i18n) pour travailler avec différentes locales :

const dayjs = require('dayjs');
const localizedFormat = require('dayjs/plugin/localizedFormat');
const localeData = require('dayjs/plugin/localeData');
const updateLocale = require('dayjs/plugin/updateLocale');
dayjs.extend(localizedFormat);
dayjs.extend(localeData);
dayjs.extend(updateLocale);
dayjs.locale('fr');
console.log(dayjs().format('dddd, MMMM D, YYYY')); // jeudi, mai 25, 2023
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']
});
console.log(dayjs().format('dddd, MMMM D, YYYY')); // jeudi, mai 25, 2023
js
JAVASCRIPT

Utilisation de Day.js avec IronPDF pour ajouter des dates aux PDFs dans Node.js

En combinant la puissance de Day.js, une bibliothèque JavaScript légère pour les dates, avec IronPDF, une bibliothèque polyvalente de génération et de manipulation de PDF pour Node.js, les développeurs peuvent gérer efficacement les dates dans leurs documents PDF.

IronPDF - La bibliothèque PDF de Node.js

IronPDF pour Node.js est une bibliothèque complète qui permet aux développeurs de créer, manipuler et interagir avec des documents PDF de manière transparente au sein de leurs applications Node.js. Offrant un ensemble riche de fonctionnalités, IronPDF simplifie des tâches telles que la génération de PDF à partir de HTML, d'URL de sites web ou de documents existants, l'ajout de texte, d'images et d'éléments interactifs, ainsi que la conversion de HTML en PDF avec précision.

Day.js npm (Comment ça fonctionne pour les développeurs) : Figure 2 - IronPDF

Pour plus d'informations détaillées sur IronPDF for Node.js, veuillez visiter cette page de documentation.

Pour commencer

Tout d'abord, assurez-vous d'avoir installé les packages nécessaires. Vous pouvez installer Day.js et IronPDF via npm :

npm i @ironsoftware/ironpdf
npm i @ironsoftware/ironpdf
SHELL

Ajout de signatures numériques avec dates

IronPDF prend également en charge l'ajout de signatures numériques aux fichiers PDF. Voici comment ajouter une signature avec un horodatage en utilisant 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");
})();
js
JAVASCRIPT

Voici le résultat :

Day.js npm (Comment cela fonctionne pour les développeurs) : Figure 3 - Sortie PDF

Vous pouvez également utiliser des exemples de code prêts à l'emploi pour commencer immédiatement avec la bibliothèque dans votre application Node.js. Pour explorer davantage, vous pouvez également consulter cette page de référence API.

Conclusion

Day.js est une bibliothèque puissante et efficace pour gérer les dates et les heures en JavaScript. Sa nature légère, son support pour les structures de données immuables et sa compatibilité avec Moment.js en font un choix attrayant pour les développeurs cherchant à gérer les opérations de date et d'heure sans ajouter de surcharge significative à leurs applications.

En intégrant Day.js avec IronPDF, les développeurs peuvent gérer facilement les dates dans leurs documents PDF. Que ce soit pour générer des PDFs à partir d'URLs ou de chaînes HTML, ou pour ajouter des signatures numériques avec des horodatages, Day.js offre un moyen simple et puissant de gérer les dates. Cette combinaison améliore la fonctionnalité de vos applications Node.js, permettant une gestion robuste et dynamique des documents PDF.

Découvrez IronPDF à partir de $749. Découvrez par vous-même la puissance de la génération et de la manipulation de fichiers PDF. Essayez-le dès aujourd'hui !

Darrius Serrant
Ingénieur Logiciel Full Stack (WebOps)

Darrius Serrant est titulaire d'une licence en informatique de l'Université de Miami et travaille en tant qu'ingénieur marketing Full Stack WebOps chez Iron Software. Attiré par le code depuis son plus jeune âge, il a vu l'informatique comme à la fois mystérieuse et accessible, en faisant le support parfait pour la créativité et la résolution de problèmes.

Chez Iron Software, Darrius apprécie de créer de nouvelles choses et de simplifier des concepts complexes pour les rendre plus compréhensibles. En tant que l'un de nos développeurs résidents, il a également fait du bénévolat pour enseigner aux étudiants, partageant son expertise avec la prochaine génération.

Pour Darrius, son travail est épanouissant car il est apprécié et a un réel impact.

< PRÉCÉDENT
npm tailwind (Comment cela fonctionne pour les développeurs)
SUIVANT >
Moment.js (Comment cela fonctionne pour les développeurs)