CodeBlanks Logo Icon CodeBlanks

Özet - Nesneler

Nesne, metot ve spread'i birleştirerek bir telefon rehberi yazarsın.

Özet - Nesneler

Bu grupta nesneleri dört açıdan inceledin: literal yazımı, özellik erişimi (nokta ve köşeli parantez), computed property ile dinamik adlar ve metot ile davranış. spread operatörü ise kopyalama ve birleştirme için kısa yazım verdi.

Bunları bir arada kullanarak gerçek veri yapıları kurabilirsin. Örneğin bir telefon rehberi: kişi nesneleri bir kök nesnede toplanır, kişiler metotlarla eklenir ve spread ile güncellenir.

Son örnekte küçük bir telefon rehberi yazacaksın. Kişi ekleyen bir metot ve isimle arayan başka bir metot tanımlayacaksın. Object spread ve köşeli parantez erişimini de kullanacaksın.

Uygulama Rehber nesnesi

contacts adında bir nesne tanımla. add(name, phone) metodu this[name] = phone ile yeni kişi eklesin. Ayşe adına 5551 numarasını ekle, sonra contacts['Ayşe'] değerini console.log ile yazdır.

Başlangıç kodu

index.js
// contacts nesnesini add metoduyla tanımla, Ayşe ekle ve numarasını yazdır

Örnek çözüm

index.js
const contacts = { add(name, phone) { this[name] = phone; } };
contacts.add('Ayşe', '5551');
console.log(contacts['Ayşe']);

Beklenen çıktı

5551

Uygulama Rehber arama

contacts nesnesini { Ayşe: '5551', Alex: '5552' } olarak tanımla. lookup(name) metodu this[name] döndürsün. contacts.lookup('Alex') çağrısının sonuçunu console.log ile yazdır.

Başlangıç kodu

index.js
// contacts nesnesini ve lookup metodunu tanımla, Alex'in numarasını yazdır

Örnek çözüm

index.js
const contacts = { Ayşe: '5551', Alex: '5552', lookup(name) { return this[name]; } };
console.log(contacts.lookup('Alex'));

Beklenen çıktı

5552

Soru ve cevaplar

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

1 Kavramları eşle

Kavram Anlamı
{ } Nesne literalı
.name Nokta erişimi
[key] Computed/dinamik erişim
...obj Spread kopyalama
greet() { } Metot tanımı

2 Telefon rehberinde arama nasıl?

  • Nesneye metot ekle
  • forEach ile gez
  • Spread ile kopyala
  • İsme göre bracket erişimi Doğru cevap

Açıklama: rehber bir nesne olduğundan isimle bracket erişimi en hızlı aramadır.

3 Spread ile güncelle

Soru
const base = { a: 1, b: 2 };
const copy = { ____, c: 3 };
Cevap
const base = { a: 1, b: 2 };
const copy = { ...base, c: 3 };

Açıklama: ...base ile a ve b özellikleri kopyalanır, c eklenir.

Başlangıç bölümündeki tüm dersler