ノードヘルプ

Day.js npm (開発者向けの動作方法)

JavaScriptにおける日付と時刻の処理は、組み込みのDateオブジェクトの制限やクセにより、歴史的に困難な課題でした。 ネイティブのDateオブジェクトは基本的な機能を提供しますが、使い勝手の面で不十分であることが多く、開発者はより堅牢なソリューションを求める傾向にあります。 そのようなソリューションの1つがDay.jsであり、日時の解析、検証、操作、および表示のためのミニマリストJavaScriptライブラリです。

この記事では、Day.jsの機能、利点、使用方法を探り、開発者の間で人気の選択肢となっている理由を示しています。

Day.jsとは何ですか?

Day.jsは、現代のブラウザで日付と時刻を正しく表示できるようにするためのシンプルなAPIを提供する軽量なJavaScriptライブラリです。 それは、より現代的なAPIであるMoment.jsの代替として設計されました。Moment.jsは広く使用されていますが、より重いライブラリです。 Day.jsはサイズがわずか2kB(gzip圧縮済み)であるため、パフォーマンスを重視したアプリケーションに最適です。 その小さなフットプリントにもかかわらず、Day.jsライブラリはMoment.jsの代替品であり、最も一般的なユースケースをカバーする強力な機能を提供します。

Day.js npm(開発者向けの仕組み):図1 - Day.js

主な機能

以下は、Day.jsライブラリの主な特徴です。

  1. 軽量: Day.jsはその小さなサイズと高度なフォーマットオプションにより、アプリケーションが高速かつ効率的であり続けることを保証します。

  2. イミュータブル: Day.js オブジェクトはイミュータブルであり、メソッドは元のオブジェクトを変更せず、新しいインスタンスを返します。

  3. チェーン可能なAPI: Day.jsのメソッドは一緒にチェーンすることができ、コードをより読みやすく簡潔にします。

  4. 国際化: Day.js は複数のロケールをサポートしており、日付と時間の簡単なローカライズを可能にします。

  5. プラグインシステム: モジュール式プラグインシステムにより、コアライブラリを肥大化させることなくDay.jsの機能を拡張することができます。

  6. 互換性: Day.js は Moment.js と API 互換性を持つように設計されており、既存のコードベースを簡単に移行できます。

インストール

Day.jsは、npmまたはyarnを使用して簡単にインストールできます。 CDNを使用して、HTMLファイルに直接含めることもできます。

npmの使用

npm install dayjs
npm install dayjs
SHELL

基本的な使用法

Day.jsは、タイムゾーンの広範なサポートを提供し、開発者がローカル時間を簡単に管理し、精密な時間操作を行うことを可能にします。 厳密なパース機能を備えたDay.jsは、日付と時刻の値を正確に解釈し、信頼性のある一貫した結果を可能にします。 時間の差引や値の更新に関わらず、Day.jsは日時の操作を簡単にし、新しいインスタンスを作成するなどの追加機能により柔軟性を高めます。

Day.jsを使った作業の具体例を見てみましょう。

1. 日付の作成

Day.jsで新しい日付インスタンスを作成するのは簡単です。 次の例がそれを示しています。

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

2. 日付の書式設定

Day.jsは、新しいインスタンスを提供し、柔軟で強力な方法で日付をフォーマットします。

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. 日付の解析

Day.jsは文字列から日付オブジェクトを解析し、さまざまな形式で日付を表示できます。

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

4. 日付の操作

Day.jsは、チェーン可能なAPIを使用して日付を簡単に操作できます。

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

日付の比較

Day.jsで日付を比較するのは簡単で直感的です。

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. ローカライゼーション

Day.jsは、さまざまなロケールに対応するための国際化(i18n)をサポートしています。

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

Node.jsのIronPDFでDay.jsを使用してPDFに日付を追加する

Day.jsという軽量なJavaScriptの日時ライブラリパッケージと、Node.js用の多機能なPDF生成および操作ライブラリであるIronPDFを組み合わせることで、開発者はPDFドキュメントでの日付を効率的に処理できます。

IronPDF - Node.js PDFライブラリ

IronPDF for Node.jsは、Node.jsアプリケーション内でPDFドキュメントをシームレスに作成、操作、やり取りするための包括的なライブラリです。 豊富な機能セットを提供するIronPDFは、HTML、ウェブサイトのURL、既存のドキュメントからPDFを生成するタスクを簡素化し、テキスト、画像、インタラクティブ要素の追加、またHTMLからPDFへの正確な変換を行います。

Day.js npm (開発者のための仕組み): 図 2 - IronPDF

IronPDF for Node.jsの詳細情報については、こちらのドキュメントページをご覧ください。

はじめに

まず、必要なパッケージがインストールされていることを確認してください。 Day.jsとIronPDFをnpm経由でインストールできます:

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

日付付きのデジタル署名の追加

IronPDFは、PDFにデジタル署名を追加することもサポートしています。 ここでは、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

こちらが出力です:

Day.js npm (開発者向けの使い方): 図3 - PDF出力

また、Node.js アプリケーションでライブラリをすぐに活用するには、コード例をすぐに使用することもできます。 さらに詳しく調べるには、APIリファレンスページをご覧ください。

結論

Day.jsは、JavaScriptで日付と時刻を管理するための強力で効率的なライブラリです。 その軽量な性質、不変データ構造のサポート、Moment.jsとの互換性により、アプリケーションに大きな負荷をかけずに日付と時間の操作を行いたい開発者にとって魅力的な選択肢となります。

Day.jsをIronPDFと統合することにより、開発者はPDFドキュメント内の日付を簡単に処理することができます。 URLやHTML文字列からPDFを生成する場合や、タイムスタンプ付きのデジタル署名を追加する場合でも、Day.jsは日付を管理するためのシンプルで強力な方法を提供します。 この組み合わせにより、Node.jsアプリケーションの機能が強化され、堅牢で動的なPDFドキュメント管理が可能になります。

IronPDFの体験は、$749から始まります。 PDFの生成と操作がどれほど強力であるか、自分で確認してください。 今日試してみてください!

Darrius Serrant
フルスタックソフトウェアエンジニア(WebOps)

Darrius Serrantは、マイアミ大学でコンピュータサイエンスの学士号を取得しており、Iron SoftwareでフルスタックWebOpsマーケティングエンジニアとして働いています。若い頃からコーディングに魅了され、コンピューティングを神秘的でありながらアクセスしやすいものと見なし、それが創造性と問題解決のための完璧な媒体であると感じました。

Iron Softwareでは、新しいものを作り出し、複雑な概念を簡単にすることでより理解しやすくすることを楽しんでいます。彼は常駐の開発者の一人として、学生に教えることを志願し、自分の専門知識を次世代と共有しています。

Darriusにとって、彼の仕事は評価され、実際に影響があることで充実しています。

< 以前
tailwind npm(開発者向けの動作方法)
次へ >
Moment.js(開発者にとっての動作方法)