AIDE SUR LES NœUDS

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

Publié septembre 29, 2024
Partager:

La gestion des dates et des heures en JavaScript a historiquement été une tâche difficile en raison des limitations et des bizarreries de l'objet Date intégré. Bien que l'objet Date natif offre une fonctionnalité de base, il est souvent insuffisant en termes d'utilisabilité, poussant les développeurs à rechercher des solutions plus robustes. Une telle solution est Day.js, une bibliothèque JavaScript minimaliste pour analyser, valider, manipuler et afficher les dates et les 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.jsest une bibliothèque JavaScript légère qui offre une API simple pour travailler avec les dates et les heures afin d'afficher la date et l'heure correctement 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 2 kB.(compressé en gzip), 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.

Jour.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 : Avec 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 chaî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 une localisation facile des dates et des heures.

  5. Système de plugins : Un système de plugins modulaire vous permet d'étendre la fonctionnalité de Day.js sans surcharger 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
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'npm install dayjs
VB   C#

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');
const dayjs = require('dayjs');
// Current date and time
const now = dayjs();
// Specific date and time
const specificDate = dayjs('2023-05-25');
const dayjs = require( 'dayjs');
' Current date and time
const now = dayjs()
' Specific date and time
const specificDate = dayjs( '2023-05-25');
VB   C#

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
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
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
VB   C#

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
const date1 = dayjs('2023-05-25');
const date2 = dayjs('05/25/2023', 'MM/DD/YYYY');
console.log(date1.isSame(date2)); // true
const date1 = dayjs( '2023-05-25');
const date2 = dayjs( '05/25/2023', 'MM/DD/YYYY');
console.log(date1.isSame(date2)) ' true
VB   C#

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
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
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
VB   C#

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
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
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
VB   C#

6. Localisation

Day.js prend en charge l'internationalisation(i18n)pour travailler avec différents paramètres régionaux :

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
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
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
VB   C#

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

IronPDFpour 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 cecidocumentation page.

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
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'npm i @ironsoftware/ironpdf
VB   C#

Ajout de signatures numériques avec dates

IronPDF prend également en charge l'ajout de signatures numériques aux fichiers PDF. Voici commentajouter une signatureavec 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");
})();
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");
})();
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'import dayjs from 'dayjs'; import { PdfDocument } from "@ironsoftware/ironpdf"; (async() => { const pdf = await PdfDocument.open("sample.pdf"); const signatureDate = dayjs().toDate(); 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" } }); await pdf.saveAs("signed_with_date.pdf"); })();
VB   C#

Voici le résultat :

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

Vous pouvez également utiliser prêt à l'emploiexemples de codepour commencer immédiatement à utiliser la bibliothèque dans votre application Node.js. Pour explorer davantage, vous pouvez également visiter cela.Référence API page.

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.

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

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

Prêt à commencer ? Version : 2024.11 vient de paraître

Installation gratuite de npm Voir les licences > ;