Menu
Coddy logo textTech

Statik Yardımcı Metotlar

Coddy'nin JavaScript Journey'sinin Nesne Yönelimli Programlama bölümünün bir parçası. Ders 33 / 56.

Statik metotlar, sınıfın örnekleri yerine doğrudan sınıfa ait olan yardımcı işlevlerdir. Örneğe özgü verilere erişim gerektirmeyen işlevler için kullanışlıdırlar.

Statik bir yardımcı metot içeren bir sınıf oluşturalım:

class MathHelper {
  // Statik bir metot tanımlayın
  static square(number) {
    return number * number;
  }
}

Statik bir yöntemi çağırmak için doğrudan sınıf adını kullanırsınız:

// Bir örnek oluşturmadan statik yöntemi çağırın
const result = MathHelper.square(5);
console.log(result); // 25

Dikkat ederseniz, new MathHelper() ile yeni bir örnek oluşturmamıza gerek kalmadı. Statik metotlar, örnek verisine ihtiyaç duymadan işlem gerçekleştiren yardımcı fonksiyonlar için mükemmeldir.

challenge icon

Görev

StringUtils adlı bir sınıf oluşturun. Bu sınıf, bağımsız değişken olarak bir dize alan ve ilk harfi büyük yazılmış aynı dizeyi döndüren capitalize adlı statik bir yönteme sahip olmalıdır. Örneğin, girdi "javascript" ise yöntem "Javascript" döndürmelidir. Bu sınıfı dışa aktarın.

  1. Dizenin boş olup olmadığını kontrol edin: if (!str || str.length === 0) (Bu kontrol yapılmazsa boş bir dize sorunlara neden olabilir).
    1. !str, null/undefined kontrolü yapar (hataları önler)
    2. str.length === 0, boş dize kontrolü yapar (çökme yerine "" döndürür)
  2. İlk karakteri alın: str.charAt(0)
  3. Onu büyük harfe dönüştürün: .toUpperCase()
  4. Dizenin geri kalanını alın: str.slice(1) (1. konumdan sona kadar)
  5. Birleştirin: büyük harfe dönüştürülmüş ilk karakter + dizenin geri kalanı

Kendin dene

import { StringUtils } from './stringUtils.js';

// Aşağıdaki kodu değiştirmeyin
console.log(StringUtils.capitalize("programming"));
quiz iconKendini test et

Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.

Nesne Yönelimli Programlama bölümündeki tüm dersler

Kendi başına pratik yap: Online JavaScript derleyicisi