Day.js npm (Geliştiriciler İçin Nasıl Çalışır)
JavaScript'te tarihler ve zamanlarla çalışmak, yerleşik Tarih nesnesinin sınırlamaları ve tuhaflıkları nedeniyle tarihsel olarak zorlu bir görev olmuştur. Yerel Tarih nesnesi temel işlevsellik sağlasa da, sık sık kullanılabilirlik açısından yetersiz kalır, bu da geliştiricileri daha sağlam çözümler aramaya yönlendirir. Bunlardan 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, Day.js'in özelliklerini, faydalarını ve kullanımını inceleyerek neden geliştiriciler arasında popüler bir seçim haline geldiğini gösteriyor.
Day.js Nedir?
Day.js, modern tarayıcılarda doğru tarih ve saat gösterebilmek için basit bir API sağlayan hafif bir JavaScript kitaplığıdır. Day.js, Moment.js gibi benzer modern API'lere alternatif olarak tasarlanmıştır, ancak daha ağır bir kütüphanedir. Day.js sadece 2 kB boyutundadır (gzipped) ve performans odaklı uygulamalar için mükemmel bir seçenektir. Küçük boyutuna rağmen, Day.js kütüphanesi, Moment.js'e alternatif sunar ve en yaygın kullanım senaryolarını kapsayan güçlü özellikler sunar.

Ana Özellikler
İşte Day.js kütüphanesinin bazı ana özellikleri:
- Hafif: Küçük boyutu ve gelişmiş biçimlendirme seçenekleri ile Day.js, uygulamanızın hızlı ve verimli kalmasını sağlar.
- Değişmezlik: Day.js nesneleri değişmezdir, yani yöntemler orijinal nesneyi mutasyona uğratmaz, bunun yerine yeni örnekler döndürür.
- Zincirlenebilir API: Day.js'teki yöntemler birbirine zincirlenebilir, bu da kodu daha okunabilir ve özlü hale getirir.
- Uluslararasılaştırma: Day.js, tarihler ve saatlerin kolayca yerelleştirilmesine olanak tanıyan birden fazla dil destekler.
- Eklenti Sistemi: Modüler bir eklenti sistemi, çekirdek kütüphaneyi şişirmeden Day.js işlevselliğini genişletmenize olanak tanır.
- Uyumluluk: Day.js, Moment.js ile API uyumlu olacak şekilde tasarlanmıştır, böylece mevcut kod tabanlarını taşımayı kolaylaştırır.
Kurulum
Day.js, npm veya yarn aracılığıyla kolayca kurulabilir. HTML dosyanıza bir CDN ile doğrudan dahil edilebilir.
npm Kullanarak
npm install dayjsnpm install dayjsTemel Kullanım
Day.js, zaman dilimleri için geniş destek sunar ve geliştiricilerin yerel saati kolayca yönetmesine ve zaman manipülasyon görevlerini hassasiyetle gerçekleştirmesine olanak tanır. Sıkı ayrıştırma yetenekleriyle, Day.js, tarih ve zaman değerlerinin doğru şekilde yorumlanmasını, böylece güvenilir ve tutarlı sonuçlar elde edilmesini sağlar. İster zamanı çıkarmak ister değerleri güncellemek olsun, Day.js, tarihler ve zamanlarla çalışmayı kolaylaştırır ve esneklik için yeni örnekler oluşturarak ek özellikler sunar.
Day.js ile çalışmaya dair bazı örneklere 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 sunar:
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, dizelerden tarih nesnelerini ayrıştırıp ve çeşitli formatlarda tarihleri 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 tarihleri kolayca manipüle etmenize olanak tanır:
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. Tarih Karşılaştırma
Day.js'te tarihlerle ilgili karşılaştırmalar basit ve doğaldır:
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ı yerel ayarlarla çalışmak için uluslararasılaştırma (i18n) desteği sunar:
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 IronPDF ile Day.js Kullanarak PDF'lere Tarihler Eklemek
Geliştiricilerin PDF belgelerindeki tarihleri verimli bir şekilde ele almalarını sağlamak için hafif bir JavaScript tarih kitaplığı paketi olan Day.js'i, Node.js için çok yönlü bir PDF oluşturma ve manipülasyon kütüphanesi olan IronPDF ile birleştirmek mümkündür.
IronPDF - Node.js PDF Kütüphanesi
IronPDF Node.js için, geliştiricilerin Node.js uygulamalarının içinde sorunsuz bir şekilde PDF belgeleri oluşturmasına, manipüle etmesine ve etkileşime girmesine olanak tanıyan kapsamlı bir kütüphanedir. Zengin bir özellik seti sunarak, IronPDF, HTML, web sitesi URL'leri veya mevcut belgelerden PDF'ler oluşturma, metin, görüntü ve etkileşimli unsurlar ekleme ve HTML'yi hassasiyetle PDF'ye dönüştürme gibi görevleri kolaylaştırır.

Node.js için IronPDF hakkında daha ayrıntılı bilgi almak için belgelendirme sayfasını ziyaret edin.
Başlarken
İlk olarak, gerekli paketlerin kurulu olduğundan emin olun. Day.js ve IronPDF'yi npm üzerinden yükleyebilirsiniz:
npm i @ironsoftware/ironpdf
PDF'lere Tarihler Eklemek için Dijital İmzalar Ekleme
IronPDF ayrıca PDF'lere dijital imzalar eklemeyi de destekler. Bir imza eklemek ve Day.js kullanarak bir zaman damgası eklemek işte böyle yapılır.
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ı:

Kitaplığa Node.js uygulamanızda hemen başlamak için hazır kod örneklerini kullanabilirsiniz. Daha fazla keşif için bu API Referansı sayfasını da ziyaret edebilirsiniz.
Sonuç
Day.js, JavaScript'te tarih ve zamanları yönetmek için güçlü ve verimli bir kütüphanedir. Hafif yapısı, değişmez veri yapıları için desteği ve Moment.js uyumluluğu, uygulamalarına önemli bir yük eklemeden tarih ve zaman işlemleri gerçekleştirmek isteyen geliştiriciler için çekici bir seçenek haline getirir.
IronPDF'ye Day.js'i entegre ederek, geliştiricilerin PDF belgelerinde tarihleri kolayca işlemesine olanak tanır. İster URL'lerden veya HTML dizelerinden PDF üretiyor olun, ister zaman damgaları ile dijital imzalar ekleyin, Day.js tarihleri yönetmek için basit ve güçlü bir yol sunar. Bu kombinasyon, Node.js uygulamalarınızın işlevselliğini artırarak güçlü ve dinamik PDF belge yönetimine olanak tanır.
Deneyimleyin IronPDF'in $999'den başlayan fiyatlarla. Gözle görülür şekilde güçlü PDF oluşturma ve PDF manipülasyonu nasıl olabilir bir bakın. Bugün deneyin!








