date-fns Çalışma Alanı
date-fns kütüphanesi fonksiyonlarını canlı bir JavaScript çalışma alanında anlık çıktı ile test edin ve deneyin
Girdi
Çıktı
Readme
date-fns Nedir?
date-fns, JavaScript'te tarihlerle çalışmak için kapsamlı, tutarlı ve güvenilir araçlar sunan modern bir JavaScript tarih yardımcı kütüphanesidir. Yerel JavaScript Date nesnesinin birçok tuhaflığı ve tutarsızlığına karşın, date-fns tarih manipülasyonu için modüler, fonksiyonel bir yaklaşım sağlar. Ağaç sarsılabilir (tree‑shakeable) olduğu için yalnızca gerçekten kullandığınız işlevleri dahil edersiniz, bu da paket boyutunuzu minimal tutar. Kütüphane, biçimlendirme ve ayrıştırmadan karşılaştırma, manipülasyon ve tarih yerelleştirmeye kadar her şeyi kapsayan 200'den fazla işlevi destekler.
date-fns Playground Neden Kullanılır?
JavaScript'te tarihlerle çalışmak zor olabilir—zaman dilimleri, biçimlendirme kalıpları ve tarih aritmetiği sık sık beklenmedik sonuçlar doğurur. Bir playground ortamı, date-fns işlevleriyle gerçek zamanlı deney yapmanıza, anlık çıktı görmenize ve tam bir proje kurmadan API'yi öğrenmenize olanak tanır. Biçimlendirme dizelerini test etmek, tarih hesaplamalarını hata ayıklamak veya uygulamanıza entegre etmeden önce tarih mantığını hızlıca prototiplemek için mükemmeldir.
Araç Açıklaması
date-fns Playground, tam date-fns kütüphanesi önceden yüklenmiş interaktif bir kod ortamıdır. Tüm date-fns kütüphanesi dateFns nesnesi üzerinden erişilebilir; böylece 200'den fazla işleve ulaşabilirsiniz. Kod, yazdıkça (debouncing ile) otomatik çalışır ve tüm console.log, console.warn ve console.error çıktıları editörün altındaki yerleşik terminalde gösterilir. Bu, date-fns öğrenmek, tarih işlemlerini test etmek ve farklı biçimlendirme seçenekleriyle denemeler yapmak için idealdir.
Örnekler
Geçerli tarihi biçimlendir:
const now = new Date();
console.log(dateFns.format(now, "MMMM do, yyyy"));
// Output: December 30th, 2025İki tarih arasındaki gün sayısını hesapla:
const start = new Date(2025, 0, 1);
const end = new Date(2025, 11, 31);
console.log(dateFns.differenceInDays(end, start) + " days");
// Output: 364 daysBir tarihe zaman ekle:
const today = new Date();
const nextWeek = dateFns.addWeeks(today, 1);
const nextMonth = dateFns.addMonths(today, 1);
console.log("Next week:", dateFns.format(nextWeek, "yyyy-MM-dd"));
console.log("Next month:", dateFns.format(nextMonth, "yyyy-MM-dd"));Bir tarihin geçmişte mi yoksa gelecekte mi olduğunu kontrol et:
const date = new Date(2024, 5, 15);
console.log("Is past?", dateFns.isPast(date));
console.log("Is future?", dateFns.isFuture(date));Bir tarih dizesini ayrıştır:
const parsed = dateFns.parse("25/12/2025", "dd/MM/yyyy", new Date());
console.log(dateFns.format(parsed, "EEEE, MMMM do, yyyy"));
// Output: Thursday, December 25th, 2025Özellikler
- Tam date-fns Kütüphanesi:
dateFnsnesnesi aracılığıyla 200+ date-fns işlevine erişim - Canlı Kod Çalıştırma: Akıllı debouncing ile yazdıkça kod otomatik çalışır
- Yerleşik Terminal: Tarayıcı geliştirici araçları olmadan konsol çıktısını anında görüntüle
- Sözdizimi Vurgulama: Daha iyi kod okunabilirliği için JavaScript sözdizimi vurgulama
- Hata İşleme: Çalışma zamanı hataları terminal çıktısında net bir şekilde gösterilir
Kullanım Alanları
- date-fns Öğrenme: Farklı işlevlerle deney yap ve proje kurulumuna gerek kalmadan sonuçları anında gör
- Tarih Biçimi Testi: İhtiyacınız olan tam çıktı desenini bulmak için farklı format dizelerini deneyin
- Tarih Hesaplama Prototipleme: İş günleri ekleme, aralık bulma veya tarih karşılaştırma gibi karmaşık tarih aritmetiğini test edin
- Tarih Mantığını Hata Ayıklama: Projelerinizden tarih ile ilgili kod parçacıklarını izole edip test edin
- Hızlı Tarih Dönüşümleri: Tarih formatları arasında dönüştürme yapın veya anlık zaman farklarını hesaplayın
Yaygın date-fns Fonksiyonları
| Fonksiyon | Açıklama | Örnek |
|---|---|---|
format |
Bir tarihi dizeye biçimlendir | dateFns.format(date, "yyyy-MM-dd") |
parse |
Bir dizeyi tarihe ayrıştır | dateFns.parse("2025-01-01", "yyyy-MM-dd", new Date()) |
addDays |
Bir tarihe gün ekle | dateFns.addDays(date, 7) |
subMonths |
Bir tarihten ay çıkar | dateFns.subMonths(date, 3) |
differenceInDays |
Tarihler arasındaki gün sayısını al | dateFns.differenceInDays(dateA, dateB) |
isAfter |
Tarihin başka bir tarihten sonra olup olmadığını kontrol et | dateFns.isAfter(dateA, dateB) |
isBefore |
Tarihin başka bir tarihten önce olup olmadığını kontrol et | dateFns.isBefore(dateA, dateB) |
startOfMonth |
Ayın ilk gününü al | dateFns.startOfMonth(date) |
endOfYear |
Yılın son anını al | dateFns.endOfYear(date) |
formatDistance |
İnsan tarafından okunabilir zaman farkı | dateFns.formatDistance(dateA, dateB) |
Biçim Tokenları Referansı
| Token | Açıklama | Örnek |
|---|---|---|
yyyy |
4 haneli yıl | 2025 |
MM |
2 haneli ay | 01-12 |
MMMM |
Tam ay adı | January |
dd |
2 haneli gün | 01-31 |
do |
Sıra ekli gün | 1st, 2nd, 3rd |
EEEE |
Tam hafta günü adı | Monday |
EEE |
Kısa hafta günü | Mon |
HH |
24 saatlik saat | 00-23 |
hh |
12 saatlik saat | 01-12 |
mm |
Dakika | 00-59 |
ss |
Saniye | 00-59 |
a |
AM/PM | AM, PM |