Göreli Zaman ve Çoğullar
RelativeTimeFormat ve PluralRules kullanın.
Göreli Zaman ve Çoğullar, CoddyKit'te ücretsiz bir JavaScript Academy dersidir. Bu, 4 dersinin 3. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, JavaScript Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. JavaScript Academy kursu toplamda 4 dersten oluşur.
Intl.RelativeTimeFormat
Intl.RelativeTimeFormat, kullanıcının dilinde "3 gün önce" veya "2 saat içinde" gibi ifadeler üretir.
const rtf = new Intl.RelativeTimeFormat("en-US");
console.log(rtf.format(-1, "day")); // "1 day ago"
console.log(rtf.format(2, "hour")); // "in 2 hours"Geçmiş İçin Negatif, Gelecek İçin Pozitif
Sayının işareti yönü belirler: negatif geçmişi, pozitif geleceği gösterir.
const rtf = new Intl.RelativeTimeFormat("en-US");
console.log(rtf.format(-3, "week")); // "3 weeks ago"
console.log(rtf.format(5, "minute")); // "in 5 minutes"Sayısal Seçenek
numeric: "auto", "1 gün önce" yerine "dün" veya "yarın" gibi dile özgü ifadeler kullanır.
const rtf = new Intl.RelativeTimeFormat("en-US", { numeric: "auto" });
console.log(rtf.format(-1, "day")); // "yesterday"
console.log(rtf.format(0, "day")); // "today"Yerelleştirilmiş Göreli Zaman
Yerel ayarı değiştirdiğinizde ifadenin tamamı otomatik olarak çevrilir.
console.log(new Intl.RelativeTimeFormat("es").format(-2, "day")); // "hace 2 dias"
console.log(new Intl.RelativeTimeFormat("fr").format(3, "hour")); // "dans 3 heures"Doğru Birimi Seçme
Gerçek uygulamalar, anlamlı olan en büyük birimi seçer. Farkı saniye cinsinden hesaplayın ve birimler arasında daha küçük birimlere doğru ilerleyin.
function ago(date) {
const diff = (date - Date.now()) / 1000;
const rtf = new Intl.RelativeTimeFormat("en-US", { numeric: "auto" });
if (Math.abs(diff) < 60) return rtf.format(Math.round(diff), "second");
if (Math.abs(diff) < 3600) return rtf.format(Math.round(diff / 60), "minute");
return rtf.format(Math.round(diff / 3600), "hour");
}
console.log(ago(new Date(Date.now() - 90000)));Intl.PluralRules
Çoğul yapma, sonuna "s" eklemekten ibaret değildir. Intl.PluralRules, bir sayıyı her dile göre "one" veya "other" gibi bir kategoriyle eşleştirir.
const pr = new Intl.PluralRules("en-US");
console.log(pr.select(1)); // "one"
console.log(pr.select(2)); // "other"
console.log(pr.select(0)); // "other"Çoğul İletileri Oluşturma
Doğru kelimeyi seçmek için kategoriyi kullanın.
const pr = new Intl.PluralRules("en-US");
const forms = { one: "item", other: "items" };
function label(n) { return n + " " + forms[pr.select(n)]; }
console.log(label(1)); // "1 item"
console.log(label(5)); // "5 items"Daha Fazla Biçime Sahip Diller
Birçok dilde birkaç çoğul kategorisi bulunur. Örneğin Lehçede "few" ve "many" ayrımı yapılır; sabitlenmiş İngilizce mantığı yanlış sonuç verir.
const pr = new Intl.PluralRules("pl");
console.log(pr.select(1)); // "one"
console.log(pr.select(3)); // "few"
console.log(pr.select(5)); // "many"Sıra Sayıları
1., 2. ve 3. gibi sıra sayıları için kategoriler almak üzere type: "ordinal" değerini geçirin.
const pr = new Intl.PluralRules("en-US", { type: "ordinal" });
const suffix = { one: "st", two: "nd", few: "rd", other: "th" };
function ordinal(n) { return n + suffix[pr.select(n)]; }
console.log(ordinal(1), ordinal(2), ordinal(3), ordinal(11)); // 1st 2nd 3rd 11thSayılarla Birleştirme
Dili tamamen yerelleştirilmiş sayım iletileri oluşturmak için PluralRules ile NumberFormat'ı birlikte kullanın.
const nf = new Intl.NumberFormat("en-US");
const pr = new Intl.PluralRules("en-US");
const forms = { one: "file", other: "files" };
function msg(n) { return nf.format(n) + " " + forms[pr.select(n)]; }
console.log(msg(1000)); // "1,000 files"Intl.ListFormat
Ek olarak Intl.ListFormat, öğeleri yerel ayara uygun bağlaçlarla birleştirir.
const lf = new Intl.ListFormat("en-US", { type: "conjunction" });
console.log(lf.format(["red", "green", "blue"])); // "red, green, and blue"Hızlı Kontrol
Göreli zamanı ve çoğulları sınayın.
Özet: Göreli Zaman ve Çoğullar
RelativeTimeFormat ile göreli zamanı biçimlendirdiniz (numeric: "auto" dahil), birim eşiklerini seçtiniz, diller ve sıra sayıları arasında PluralRules ile doğru çoğul biçimlerini kullandınız ve listeleri ListFormat ile birleştirdiniz. Sırada yerel ayara duyarlı sıralama var.
Yapay zeka eğitmeniyle JavaScript öğren — ücretsiz
Tarayıcında gerçek kod yaz ve çalıştır, 7/24 yapay zeka eğitmeninden anında yardım al; web'de ya da uygulamada kaldığın yerden devam et.
- Kurslar
- 59
- Dersler
- 200
Sıkça Sorulan Sorular
“Göreli Zaman ve Çoğullar” dersi ücretsiz mi?
Evet — “Göreli Zaman ve Çoğullar” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve JavaScript Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. JavaScript Academy kursu toplamda 4 dersten oluşur.
“Göreli Zaman ve Çoğullar” dersinde ne öğreneceğim?
RelativeTimeFormat ve PluralRules kullanın. JavaScript Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.
JavaScript Academy öğrenmeye başlamak için deneyim gerekli mi?
Önceden deneyim gerekmez. CoddyKit'te JavaScript Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 3. dersidir.
“Göreli Zaman ve Çoğullar” dersi ne kadar sürer?
Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.
Bu JavaScript Academy dersinde kod yazıp çalıştırabilir miyim?
Evet. Her JavaScript Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.
Bu kursun tüm dersleri
- Sayıları ve Para Birimini Biçimlendirme
- Tarihleri ve Saatleri Biçimlendirme
- Göreli Zaman ve Çoğullar
- Yerel Ayarlara Uygun Sıralama