Intl.RelativeTimeFormat
Intl.RelativeTimeFormat ile '3 gün önce' gibi görece zaman ifadelerini formatlamayı öğrenirsin.
Intl.RelativeTimeFormat
Intl.RelativeTimeFormat '3 gün önce', '2 saat sonra' gibi görece zaman ifadelerini biçimlendirir. Constructor'a locale dizesini verirsin; format metodu bir sayı ve birim dizesi alır. Birimler şunlardır: 'year', 'quarter', 'month', 'week', 'day', 'hour', 'minute', 'second'. Negatif sayı 'önce', pozitif sayı 'sonra' anlamına gelir. numeric: 'auto' seçeneği '1 gün önce' yerine 'dün' gibi özelleşmiş ifadeler kullanır.
Uygulama 'dün' ifadesini üret
'tr-TR' locale'i için bir Intl.RelativeTimeFormat oluştur. numeric 'auto' olsun. format metodunu -1 sayısı ve 'day' birimiyle çağır, sonucu yesterday değişkenine ata.
Örnek çözümü göster
1. new Intl.RelativeTimeFormat('tr-TR', { numeric: 'auto' }) ile oluştur.
2. .format(-1, 'day') ile biçimle.
3. Sonucu yesterday değişkenine ata.
Örnek çözüm:
const yesterday = new Intl.RelativeTimeFormat('tr-TR', { numeric: 'auto' }).format(-1, 'day');
numeric ve style seçenekleri
Intl.RelativeTimeFormat'in iki önemli seçeneği vardır. numeric varsayılan 'always' her zaman sayı gösterir: '1 gün önce'. 'auto' ise bazı değerler için özelleşmiş dize verir: 'dün', 'bugün', 'yarın'. style üç değer alır: 'long' tam biçim ('gün önce'), 'short' kısa ('g öncesi'), 'narrow' en kısa. Sayı negatifse 'önce', pozitifse 'sonra' anlamı çıkar. Birim yanlış verilirse RangeError fırlatılır.
Kendini test et
-
numeric: 'auto' ne yapar?
- Sadece pozitif sayılara izin verir
- Saat dilimini değiştirir
- Çıktıyı kısaltır
- '1 day ago' yerine 'yesterday' gibi özelleşmiş ifade kullanır
Cevabı göster
'1 day ago' yerine 'yesterday' gibi özelleşmiş ifade kullanır — Doğru. numeric 'auto' bazı değerler için dile özgü kısa ifadeler üretir.
-
gün birimini ekle
const rtf = new Intl.RelativeTimeFormat('en'); rtf.format(-3, '____');Cevabı göster
const rtf = new Intl.RelativeTimeFormat('en'); rtf.format(-3, 'day''); -
Zaman birimlerini anlamlarına eşleştir
- year
- Yıl
- month
- Ay
- day
- Gün
- hour
- Saat