Day.js npm (Geliştiriciler İçin Nasıl Çalışır)
JavaScript'te tarih ve saatleri işlemek, yerleşik Date nesnesinin sınırlamalarından ve tuhaflıklarından dolayı tarihsel olarak zor bir görev olmuştur. Yerel Date nesnesi temel işlevsellik sağlasa da, sıklıkla kullanılabilirlik açısından yetersiz kalır ve geliştiricileri daha sağlam çözümler aramaya yönlendirir. Bu çözümlerden biri, tarih ve saatleri ayrıştırma, doğrulama, manipüle etme ve görüntüleme için minimalist bir JavaScript kitaplığı olan Day.js'dir.
Bu makale, neden geliştiriciler arasında popüler bir seçim haline geldiğini göstermek için Day.js'in özelliklerini, avantajlarını ve kullanımını araştırıyor.
Day.js Nedir?
Day.js, modern tarayıcılarda tarihi ve saati doğru bir şekilde görüntülemek için tarih ve saatlerle çalışmak için basit bir API sağlayan hafif bir JavaScript kitaplığıdır. Geniş çapta kullanılan ancak çok daha ağır olan Moment.js gibi benzer şekilde modern bir API'ye alternatif olarak tasarlanmıştır. Day.js yalnızca 2kB boyutundadır (sıkıştırılmış), bu da onu performans odaklı uygulamalar için mükemmel bir seçim yapar. Küçük boyutuna rağmen, Day.js kitaplığı Moment.js'e bir alternatif olup, en yaygın kullanım senaryolarını kapsayan güçlü özellikler sunar.

Ana Özellikler
Day.js kitaplığının bazı ana özellikleri şunlardır:
- Hafif: Küçük boyutu ve gelişmiş formatlama seçenekleriyle, Day.js uygulamanızın hızlı ve verimli kalmasını sağlar.
- Değişmez: Day.js nesneleri değişmezdir, yani metodlar orijinal nesneyi değiştirmez, bunun yerine yeni örnekler döner.
- Zincirlenebilir API: Day.js metodları birbirine zincirlenebilir, bu da kodu daha okunabilir ve özlü kılar.
- Uluslararasılaştırma: Day.js, tarih ve saatlerin kolayca yerelleştirilmesini sağlayarak birden fazla yerel ayarı destekler.
- Eklenti Sistemi: Modüler bir eklenti sistemi, Day.js'in çekirdek kütüphanesini şişirmeden işlevselliğini genişletmenize olanak tanır.
- Uyumluluk: Day.js, Moment.js ile API uyumlu olacak şekilde tasarlanmıştır, bu da mevcut kod tabanlarını taşımayı kolaylaştırır.
Kurulum
Day.js npm veya yarn aracılığıyla kolayca kurulabilir. Ayrıca bir CDN kullanarak HTML dosyanıza doğrudan dahil edilebilir.
npm Kullanımı
npm install dayjsnpm install dayjsTemel Kullanımı
Day.js, geliştiricilerin yerel zamanı zahmetsizce yönetmelerine ve hassas bir şekilde zaman manipülasyonu görevlerini yerine getirmelerine olanak tanıyan geniş zaman dilimi desteği sunar. Katı ayrıştırma yetenekleriyle, Day.js tarih ve saat değerlerinin doğru yorumlanmasını sağlar, böylece güvenilir ve tutarlı sonuçlar elde edilebilir. İster zamanı çıkarmak ister değerleri güncellemek olsun, Day.js tarih ve saatlerle çalışmayı kolaylaştırır, esnekliği artırmak için yeni örnekler oluşturma gibi ek özellikler sunar.
Day.js ile çalışmanın bazı örneklerine bakalım.
1. Tarih Oluşturma
Day.js'te yeni bir tarih örneği oluşturmak basittir. Aşağıdaki örnek bunu göstermektedir:
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');2. Tarihleri Biçimlendirme
Day.js, tarihleri biçimlendirmek için esnek ve güçlü bir yol sağlar:
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, 2023const 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, 20233. Tarihleri Ayrıştırma
Day.js, tarih nesnelerini dizelerden ayrıştırabilir ve tarihleri çeşitli formatlarda gösterebilir:
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)); // trueconst 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)); // true4. Tarihleri Manipüle Etme
Day.js, zincirlenebilir API'si ile tarihler üzerinde kolayca işlem yapmayı sağlar:
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-25const 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-255. Tarihleri Karşılaştırma
Day.js'te tarihleri karşılaştırmak basit ve sezgiseldir:
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)); // falseconst 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)); // false6. Yerelleştirme
Day.js, farklı yerlerle çalışmak için uluslararasılaştırmayı (i18n) destekler:
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, 2023const 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, 2023Node.js'te PDF'lere Tarih Eklemek için Day.js ve IronPDF Kullanımı
Hafif bir JavaScript tarih kutuphanesi olan Day.js'in gücünü, Node.js için çok yönlü PDF oluşturma ve işleme kutuphanesi olan IronPDF ile birleştirerek, geliştiricilerin PDF belgelerindeki tarihleri verimli bir şekilde ele almalarını sağlar.
IronPDF - Node.js PDF Kutuphanesi
IronPDF for Node.js, geliştiricilere, Node.js uygulamalarında kesintisiz bir şekilde PDF belgeleri oluşturma, değiştirme ve etkileşime girme yetkisi veren kapsamlı bir kutuphanedir. Geniş bir özellik seti sunan IronPDF, HTML, web sitesi URL'leri veya mevcut belgelerden PDF oluşturma, metin, resim ve etkileşimli öğeler ekleme, ve HTML'yi PDF'e hassasiyetle dönüştürme gibi görevleri basitleştirir.

Node.js for IronPDF hakkında daha ayrıntılı bilgi için lütfen bu dokümantasyon sayfasını ziyaret edin.
Başlarken
İlk olarak, gerekli paketlerin yüklü olduğundan emin olun. npm üzerinden Day.js ve IronPDF'i yükleyebilirsiniz:
npm i @ironsoftware/ironpdf
Tarihler ile Dijital İmzalar Ekleme
IronPDF ayrıca PDF'lere dijital imzalar eklemeyi destekler. Day.js kullanarak zaman damgalı imza eklemek için bu şekilde yapabilirsiniz.
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");
})();İşte çıktı:

Kutuphaneyi Node.js uygulamanızda hemen başlatmak için kullanıma hazır kod örnekleri de kullanabilirsiniz. Daha fazla keşfetmek için ayrıca bu API Referansi sayfasını ziyaret edebilirsiniz.
Sonuç
Day.js, JavaScript'te tarih ve zamanları yönetmek için güçlü ve etkili bir kütüphanedir. Hafif yapısı, değişmez veri yapılarını desteklemesi ve Moment.js ile uyumluluğu, uygulamalarına önemli yük eklemeden tarih ve zaman işlemleri yapmak isteyen geliştiriciler için çekici bir seçim haline getirir.
Day.js'i IronPDF ile entegre ederek, geliştiriciler PDF belgelerindeki tarihleri kolayca ele alabilir. URL'lerden veya HTML dizgilerinden PDF oluşturma ya da zaman damgalı dijital imzalar ekleme, Day.js tarihleri yönetmek için basit ve güçlü bir yol sağlar. Bu kombinasyon, Node.js uygulamalarınızın işlevselliğini artırarak sağlam ve dinamik PDF belge yönetimi sağlar.
IronPDF'in deneyimini yaşayın $799 ile başlayarak. Güçlü PDF oluşturma ve PDF işleme işlemlerinin nasıl olabileceğini kendiniz görün. Bugün deneyin!








