JavaScript'te Nesne İçinde Fonksiyon

Symbol'ler kullanılarak nesnelere fonksiyonlar eklenebilir ve bu fonksiyonlar döngüye girmez. Deneyelim. Bir nesnemiz olsun:

javascriptlet obj = {a: 1, b: 2, c: 3};

Bir Symbol oluşturalım:

javascriptlet sym = Symbol();

Nesneye, anahtarı Symbol'ümüz olan bir fonksiyon yazalım:

javascriptobj[sym] = function() {
  console.log('!!!');
};

Nesne döngüye alındığında fonksiyonumuz döngüye girmeyecek:

javascriptfor (let key in obj) {
  console.log(obj[key]); // 1, 2, 3
}

Fonksiyonumuzu alalım, anahtar olarak Symbol'ümüzü (aynı değişkeni) ileterek:

javascriptlet func = obj[sym];
func();

Kod kısaltılabilir:

javascriptobj[sym]();
Задание 1

Nesneye, mevcut zamanı yazdıracak bir fonksiyon ekleyin. Bu fonksiyonu çağırın.