CodeBlanks Logo Icon CodeBlanks

Tarih yardımcıları

Date işleme fonksiyonlarını eklersin.

Tarih yardımcıları

Şimdi helpers nesnesine bir tarih yardımcısı ekleyeceğiz: formatDate. Bu metod bir ISO tarih dizesini ("2024-03-15") "15.03.2024" biçimine çevirir.

Örnek: helpers.formatDate = function(iso) { const [y, m, d] = iso.split("-"); return d + "." + m + "." + y; }. Burada iso.split("-") dizeyi tirelerden böler ve bir dizi verir; [y, m, d] ile yıkım (destructuring) yapılır. helpers.formatDate("2024-03-15") çağrısı 15.03.2024 döndürür. Bu, ISO tarihleri kullanıcıya gösterilebilir biçime çevirmenin pratik bir yoludur. Önceki derslerin çözümünü alıp bu metodu ekleyeceğiz.

split ile ayrıştırma

split metodu bir dizeyi belirli bir ayraçtan böler ve bir dizi verir. "2024-03-15".split("-") sonucu ["2024", "03", "15"]'tir. Yıkım ile her parçayı ayrı değişkene alırsın.

Örnek: const [y, m, d] = iso.split("-");. Burada y = "2024", m = "03", d = "15". Sonra d + "." + m + "." + y ile yeni düzeni birleştirirsin. Yıkım, dizinin öğelerini sırayla değişkenlere atar; sıra önemlidir. Bu teknik, tarih, saat ve CSV gibi yapılandırılmış dizeden veri çekmenin temel yoludur.

Uygulama formatDate metodunu ekle ve çağır

Önceki derslerin çözümünü al. helpers.formatDate metodunu ekle: gövdesi const [y, m, d] = iso.split("-"); return d + "." + m + "." + y;. console.log(helpers.formatDate("2024-03-15")) ile sonucu yazdır.

Başlangıç kodu

index.js
const helpers = {};
module.exports = helpers;
console.log("Hazır");
helpers.capitalize = function(text) {
  if (!text) return text;
  return text[0].toUpperCase() + text.slice(1);
};
console.log(helpers.capitalize("merhaba"));
helpers.clamp = function(value, min, max) {
  if (value < min) return min;
  if (value > max) return max;
  return value;
};
console.log(helpers.clamp(15, 0, 10));

// formatDate metodunu ekle
// buraya yaz

// formatDate'i çağır ve sonucu yazdır
// buraya yaz

Örnek çözüm

index.js
const helpers = {};
module.exports = helpers;
console.log("Hazır");
helpers.capitalize = function(text) {
  if (!text) return text;
  return text[0].toUpperCase() + text.slice(1);
};
console.log(helpers.capitalize("merhaba"));
helpers.clamp = function(value, min, max) {
  if (value < min) return min;
  if (value > max) return max;
  return value;
};
console.log(helpers.clamp(15, 0, 10));
helpers.formatDate = function(iso) {
  const [y, m, d] = iso.split("-");
  return d + "." + m + "." + y;
};
console.log(helpers.formatDate("2024-03-15"));

Beklenen çıktı

Hazır
Merhaba
10
15.03.2024

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 formatDate("2024-03-15") ne döndürür?

index.js
helpers.formatDate("2024-03-15")
  • "2024-03-15"
  • "15.03.2024" Doğru cevap
  • "2024.03.15"
  • "03.15.2024"

Açıklama: Düzen gün.ay.yıl biçimindedir: 15.03.2024.

2 Parçayı rolüne eşle

Kavram Anlamı
split("-") Dizeyi tirelerden böler
[y, m, d] Yıkım ile parçaları alır
d + "." + m + "." + y Yeni düzeni birleştirir
iso Giriş tarih dizesi

3 formatDate dönüşünü tamamla

Soru
return ____ + "." + m + "." + y;
Cevap
return d + "." + m + "." + y;

Açıklama: return d + "." + m + "." + y; yazılır.

Orta seviye bölümündeki tüm dersler