Tüm blog yazıları

JavaScript Nesnelerinde Veri Ekleme, Güncelleme ve Silme

JavaScript, yazılım dünyasında en yaygın kullanılan dillerden biridir ve güçlü özelliklerinden biri de nesne (object) yapısıdır. Nesneler, birbirine ait bilgileri bir arada tutmak için kullanılan, içinde anahtar-değer (key-value) çiftleri barındıran özel veri yapılarıdır. Gerçek hayatta bir ça

eminbasbayan3 dk okuma
JavaScript Nesnelerinde Veri Ekleme, Güncelleme ve Silme

JavaScript, yazılım dünyasında en yaygın kullanılan dillerden biridir ve güçlü özelliklerinden biri de nesne (object) yapısıdır. Nesneler, birbirine ait bilgileri bir arada tutmak için kullanılan, içinde anahtar-değer (key-value) çiftleri barındıran özel veri yapılarıdır. Gerçek hayatta bir çalışanın adı, görev durumu ve sorumlu olduğu proje gibi bilgiler nasıl bir arada düşünülecekse, JavaScript’te de bu şekilde tanımlanabilir.

Nesne Nedir?

Bir nesne, verileri etiketli şekilde saklamamıza olanak tanır. Örneğin, bir şirkette çalışanların görev durumlarını takip etmek için şu şekilde bir nesne oluşturabiliriz:

jsx
const employeeStatus = {
  Ahmet: "Görevde",
  Zeynep: "Toplantıda"
};

Burada:

  • "Ahmet" ve "Zeynep" anahtar (key),
  • "Görevde" ve "Toplantıda" ise bu kişilerin mevcut görev durumlarını temsil eden değerlerdir (value).

Nesnede Var Olan Veriyi Güncellemek

Diyelim ki Zeynep’in toplantısı bitti ve artık "Görevde" olarak işaretlenmesi gerekiyor. Bu durumda ilgili veriyi güncellemek oldukça kolaydır:

1. Nokta Gösterimi (Dot Notation):

jsx
employeeStatus.Zeynep = "Görevde";

2. Köşeli Parantez Gösterimi (Bracket Notation):

jsx
employeeStatus["Zeynep"] = "Görevde";

Her iki yöntem de aynı sonucu verir.

Nesneye Yeni Veri Eklemek

Yeni bir çalışan olan Elif işe başladı ve durumu "Eğitimde" olarak tanımlanacaksa:

jsx
employeeStatus.Elif = "Eğitimde";

veya

jsx
employeeStatus["Elif"] = "Eğitimde";

Benzer şekilde, Murat isimli bir çalışanın durumu "İzinde" olarak eklenebilir:

jsx
employeeStatus["Murat"] = "İzinde";

Bu işlemlerle nesneye yeni anahtarlar eklenmiş olur. JavaScript nesneleri dinamik yapıda olduğu için sonradan genişletilebilir.

Nesneden Veri Silmek

Artık şirkette çalışmayan bir kişi varsa ve onun kaydını silmek istiyorsak delete ifadesini kullanabiliriz. Örneğin, Ahmet şirketten ayrıldıysa:

jsx
delete employeeStatus.Ahmet;

veya

jsx
delete employeeStatus["Ahmet"];

Silme işleminden sonra "Ahmet" anahtarına ulaşmak mümkün olmayacaktır.

Silinip silinmediğini kontrol etmek için:

jsx
if ("Ahmet" in employeeStatus) {
  console.log("Ahmet hâlâ sistemde.");
} else {
  console.log("Ahmet silinmiş.");
}

Not: Silinen bir anahtar undefined döner ve nesnenin yapısından tamamen çıkar.

Nokta ve Köşeli Parantez Kullanımı Arasındaki Fark

  • Nokta Gösterimi (.): Sadece geçerli değişken isimlerine uygun anahtarlar için kullanılır (boşluk, tire veya rakamla başlamayanlar).

  • Köşeli Parantez Gösterimi (["anahtar"]): Anahtar bir değişkense veya geçersiz karakterler içeriyorsa bu yöntem kullanılır:

    jsx
    const status = {};
    const personName = "Ali Veli";
    
    status[personName] = "Görevde"; // status["Ali Veli"] = "Görevde"

Dizi ve Nesne Arasındaki Fark

Hem diziler hem de nesneler veri tutmak için kullanılır, ancak kullanım amaçları farklıdır:

Dizi (Array): Verileri sıralı şekilde tutar. Her elemanın bir indeks numarası vardır:

jsx
const görevler = ["Toplantı", "Yazılım Geliştirme", "Raporlama"];
// görevler[0] => "Toplantı"

Nesne (Object): Verileri etiketleyerek saklar. Sıra önemli değildir, hangi etiketin (anahtarın) neyi temsil ettiğine bakılır:

jsx
const görevDurumu = {
  Elif: "Eğitimde",
  Murat: "İzinde"
};

Veri yapısı seçerken:

  • Sıralı ve indisli bilgi gerekiyorsa dizi,
  • Etiketli ve anlamsal bilgi gerekiyorsa nesne kullanılır.

Sonuç

JavaScript’te nesneler, günlük yazılım geliştirme süreçlerinde çokça kullanılan esnek yapılardır. Bir çalışanın görev durumu, bir ürünün stoğu, bir öğrencinin not bilgisi gibi birçok senaryoda nesneler etkili ve düzenli veri yönetimi sağlar. Bu yazıda, bir nesneye nasıl veri ekleneceğini, güncelleneceğini, erişileceğini ve silineceğini öğrendik.

Bu temel bilgiler, ileride nesne tabanlı yapılarla çalışırken size güçlü bir başlangıç noktası sunacaktır.

JavaScript Classes ile pratik uygulamalar, metotlar arası iletişim ve gerçek dünya kod örnekleri
JavaScript Dersleri9 dk okuma

JavaScript Classes - Pratik Uygulamalar

JavaScript class'ları ile pratik uygulamalara geçin! Metotlar arası iletişimden constructor'da metot çağırmaya, kod tekrarını azaltmaktan gerçek dünya senaryolarına kadar class kullanımının inceliklerini keşfedin. Kendi alışveriş sepeti örneğinizle bilginizi pekiştirin.

Yazıyı oku
JavaScript class yapısını gösteren bir kod örneği, ES6 ile modern nesne oluşturma
JavaScript Dersleri9 dk okuma

JavaScript Classes

ES6 ile JavaScript'e gelen class yapısı sayesinde nesne oluşturmak artık çok daha kolay ve düzenli! Constructor function karmaşasından kurtulup, okunabilir ve yönetilebilir kodlar yazmak isteyenler için modern JavaScript'in temel taşı olan class'ları tüm detaylarıyla keşfedin. Bu rehberle nesne şabl

Yazıyı oku
JavaScript kodunda Constructor Function ve new keyword'ü ile nesne oluşturma örnekleri
JavaScript Dersleri8 dk okuma

Constructor Functions ve new Keyword

Factory Function'ların hafıza israfı sorununa Constructor Function'lar ve new keyword'ü ile son verin! Metotları paylaştırarak JavaScript objelerini daha verimli nasıl oluşturacağınızı, new'in perde arkasında neler yaptığını ve prototype sisteminin gücünü bu rehberde keşfedin.

Yazıyı oku

Çerez tercihlerin

Platformun çalışması için zorunlu çerezler kullanıyoruz. İzin verirsen anonim kullanım verilerini ölçüyoruz. Ayrıntıları incele