Tüm blog yazıları

JavaScript’te Nesneler (Object Literals) ile Çalışmak

JavaScript dünyasında verileri düzenlemek ve bir arada tutmak için kullandığımız en güçlü araçlardan biri nesnelerdir (objects). Nesneler, gerçek hayattaki bir insanı, bir kitap kaydını ya da bir yorum sistemini yazılımda temsil etmemizi sağlar. Bu yazıda, sa

eminbasbayan3 dk okuma
JavaScript’te Nesneler (Object Literals) ile Çalışmak

JavaScript dünyasında verileri düzenlemek ve bir arada tutmak için kullandığımız en güçlü araçlardan biri nesnelerdir (objects). Nesneler, gerçek hayattaki bir insanı, bir kitap kaydını ya da bir yorum sistemini yazılımda temsil etmemizi sağlar. Bu yazıda, sadece nesnelerin temelini yani object literal denilen yapıyı öğreneceğiz. Başka konulara girmeyeceğiz; sadece bir nesne nasıl tanımlanır, içine neler yazılır ve hangi veri türleri kullanılabilir, bunlara odaklanacağız.

Nesne Nedir?

Basitçe düşünelim. Bir okulda öğrencinin adını, numarasını ve sınıfını saklamak istiyoruz. Bunları ayrı ayrı üç değişkenle tutabiliriz:

metin
const ad = "Ayşe";
const numara = 102;
const sinif = "10A";

Ama her öğrenci için ayrı ayrı değişkenler oluşturmak zor ve karmaşık hale gelir. Bunun yerine, tüm bu bilgileri tek bir değişkende toplamak çok daha düzenli olur. İşte burada nesneler devreye girer.

Nesne Nasıl Oluşturulur?

JavaScript’te nesneleri süslü parantez {} kullanarak oluştururuz. İçine yazdığımız her bilgi, bir anahtar-değer (key-value) çifti olarak tanımlanır. Anahtar, bir etiket gibidir; değeri temsil eder. Aralarına : (iki nokta) koyarız. Birden fazla bilgi varsa, aralarına , (virgül) koyarız.

Örnek:

metin
const ogrenci = {
  ad: "Ayşe",
  numara: 102,
  sinif: "10A"
};

Bu nesne, bir öğrenciyi temsil ediyor ve onunla ilgili üç bilgi içeriyor: adı, numarası ve sınıfı.

Nesnelerde Farklı Veri Türleri Kullanmak

Nesnelerin en güzel yanlarından biri, içine istediğimiz türde bilgiyi koyabilmemizdir. Sadece yazı (string) değil, sayı (number), doğru/yanlış (boolean), dizi (array) ve hatta başka nesneleri bile yerleştirebiliriz.

Örnek olarak bir kitap bilgisi tanımlayalım:

metin
const kitap = {
  baslik: "Gölgedeki Kadın",
  yazar: "Ahmet Demir",
  sayfaSayisi: 320,
  konular: ["gerilim", "macera", "psikoloji"],
  satistaMi: true
};

Bu örnekte:

  • baslik ve yazar birer yazıdır.
  • sayfaSayisi bir sayıdır.
  • konular bir dizidir.
  • satistaMi ise bir boolean (doğru/yanlış) ifadedir.

Nesne içinde bu kadar çeşitli veri türünü bir arada kullanabilmek, onu esnek ve güçlü bir yapı haline getirir.

Nesnelerde Sıralama Önemli mi?

Dizilerde elemanların sırası önemlidir; çünkü her elemanın bir indexi (sıra numarası) vardır. Ama nesnelerde böyle bir şey yoktur. Yani önce ad, sonra soyad, sonra numara yazmak zorunda değiliz. Tek önemli olan şey, her değerin doğru anahtar altında tanımlanmış olmasıdır.

metin
const ogrenci = {
  numara: 102,
  ad: "Ayşe",
  sinif: "10A"
};

Yukarıdaki tanım da tamamen doğrudur ve çalışır.

Karışık Bir Örnek: Film Bilgisi

Son olarak farklı veri türlerini içeren, biraz daha kapsamlı bir nesne örneği inceleyelim:

metin
const film = {
  ad: "Sonsuz Yolculuk",
  yonetmen: "Melis Yıldız",
  vizyonYili: 2021,
  turler: ["bilim kurgu", "dram"],
  imdbPuani: 8.4,
  izlenmeSayisi: 1500000,
  yorumlar: {
    ilkYorum: "Harikaydı!",
    ikinciYorum: "Finali beklediğim gibi değildi."
  },
  aktifMi: false
};

Bu nesne bir filmi temsil ediyor ve içinde:

  • Yazılar (string)
  • Sayılar (number)
  • Dizi (array)
  • Başka bir nesne (yorumlar)
  • Boolean (aktifMi) gibi farklı veri türleri yer alıyor.

Nesne Oluştururken Dikkat Edilecekler

  • Her bir anahtar-değer çiftinden sonra , (virgül) konulmalı.
  • Anahtar isimleri genellikle küçük harfle başlar ve camelCase dediğimiz yazım şekliyle yazılır: kullaniciAdi, dogumTarihi gibi.
  • Değer kısmında string’ler tırnak içinde yazılırken, sayılar ve boolean değerler doğrudan yazılır.
  • Nesneye const ile tanımlarsak, içeriğini değiştirebiliriz ama tümünü başka bir şeye eşitleyemeyiz. Bu da nesnelerin referans türünde olduğunu gösterir.

Sonuç

JavaScript'te nesneler, birbiriyle ilişkili verileri düzenli bir şekilde saklamamızı sağlar. İçine farklı türde veri koyabiliriz ve bu da onları çok yönlü bir yapı haline getirir. İster bir öğrenciyi, ister bir filmi, ister bir yorumu temsil et; nesnelerle tüm bu bilgileri tek bir yerde toplayabilir ve düzenli tutabilirsin. Programlamada gerçek dünyayı modellemek istiyorsan, nesneler senin en önemli araçlarından biri olacak.

Bu yazıda, sadece nesne literal yapısını inceledik. İlerleyen konularda, bu nesnelerden nasıl veri çekilir, nasıl güncellenir gibi konulara da gireceğiz. Ama önce, bu temeli tam anlamıyla kavramak çok önemli.

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