Skip to main content

JavaScript Nesneleri (Objects) 🧱

Bu rehberde, JavaScript’teki nesne yapısını (Objects) en temelden öğreneceksiniz.
Nesnelerin nasıl oluşturulduğunu, özellik ve metot farklarını, veri ekleme–silme işlemlerini
ve for...in döngüsüyle nasıl gezilebileceğini adım adım uygulayacağız.


🎯 Bu Rehberde Öğrenecekleriniz

  • Nesne literal ({}) ve constructor (new Object()) farkı
  • Özellik (property) ve metot (method) tanımlama
  • Nokta (.) ve köşeli parantez ([]) ile veri erişimi
  • Nesneye veri ekleme, değiştirme ve silme
  • for...in döngüsüyle nesne özelliklerini listeleme

1️⃣ JavaScript Nesnelerine Giriş

JavaScript’te bir nesne, anahtar (key) ve değer (value) çiftlerinden oluşur.
Bir nesne; metin, sayı, boolean ya da fonksiyon (metot) gibi farklı veri türlerini barındırabilir.

Gerçek hayattan bir örnek:

const kullanici = {
ad: "Rabisu",
yas: 5,
premium: true,
selamla: function() {
return `Merhaba, ben ${this.ad}!`;
}
};

kullanici nesnesi üç özellik (ad, yas, premium) ve bir metot (selamla) içerir. this anahtar kelimesi, mevcut nesneyi temsil eder.


2️⃣ Özellikler (Properties) ve Metotlar (Methods)

Kavram Tanım Analoji Özellik (Property) Nesnenin verisini temsil eder. İsim (Noun) → Arabanın rengi. Metot (Method) Nesneye özel bir fonksiyondur. Eylem (Verb) → Arabanın çalışması (calistir()).

Örnek:

const araba = {
marka: "Tesla",
renk: "kırmızı",
calistir: function() {
return `${this.marka} çalıştı!`;
}
};

calistir() metodu, araba nesnesine özel bir davranıştır.


3️⃣ Nesne Oluşturma Yöntemleri

🔹 Nesne Literali (Önerilen Yöntem)

const ayarlar = {};

🔹 Nesne Constructor

const ayarlar = new Object();

Her iki yöntem de boş nesne oluşturur, ancak kullanmak hem kısa hem güvenlidir.


4️⃣ Özelliklere Erişim

Nokta Gösterimi (Dot Notation)

console.log(kullanici.ad);
Köşeli Parantez Gösterimi (Bracket Notation)
console.log(kullanici["yas"]);

Köşeli parantez yöntemi, özellik adı değişkende saklanıyorsa veya özel karakter içeriyorsa zorunludur.

Metot Çağırma

kullanici.selamla(); // "Merhaba, ben Rabisu!"

5️⃣ Özellik Ekleme, Güncelleme ve Silme

Ekleme / Güncelleme

Kodu kopyala
kullanici.email = "[email protected]";
kullanici.premium = false;

Yeni Metot Ekleme

kullanici.guncelle = function() {
return `${this.ad} bilgileri güncellendi.`;
};

Özellik Silme

delete kullanici.premium;

delete işlemi başarıyla tamamlandığında true döner.


6️⃣ Nesne Özelliklerinde Döngü (for...in)

for...in, bir nesnedeki tüm anahtarlar üzerinde dönmek için kullanılır.

const karakter = {
isim: "Balta",
irki: "cüce",
yas: 139
};

for (let anahtar in karakter) {
console.log(`${anahtar.toUpperCase()}: ${karakter[anahtar]}`);
}

Çıktı:

ISIM: Balta
IRKI: cüce
YAS: 139

Object.keys() ile Anahtarları Dizi Olarak Almak

console.log(Object.keys(karakter));

Çıktı:

["isim", "irki", "yas"]

Object.keys() anahtarları dizi halinde döndürür, böylece map() veya forEach() gibi yöntemlerle çalışabilirsiniz.


💬 Sıkça Sorulan Sorular (SSS)

  1. Nesne literal ve constructor farkı nedir?

Literal () yöntemi basit ve tercih edilir. new Object() ise nadiren, özel kalıtım senaryolarında kullanılır.

  1. this anahtar kelimesi neyi temsil eder?

Metot içindeyken, o metodun bağlı olduğu nesneyi gösterir. Örneğin this.ad, o nesnedeki ad özelliğine erişir.

  1. Ne zaman köşeli parantez kullanmalıyım?

Özellik adında boşluk, özel karakter veya değişken varsa. Örnek: nesne["e-posta"] veya nesne[prop].

  1. for...in ile for...of farkı nedir?

for...in nesne anahtarlarında, for...of ise diziler veya stringlerde değerler üzerinde döner.

  1. Nesneler neden bu kadar önemli?

Çünkü diziler, tarih objeleri, DOM öğeleri bile aslında nesnedir. Yani JavaScript’in temel yapı taşıdırlar.


🏁 Sonuç

JavaScript nesneleri, verileri düzenli ve ilişkili biçimde saklamanızı sağlar. Bir kullanıcı hesabı, alışveriş sepeti veya oyun karakteri — hepsi birer nesnedir.

Bu bilgileri kullanarak daha modüler ve yönetilebilir projeler geliştirebilirsiniz. 🚀 Uygulamalarınızı Rabisu Bulut Platformu üzerinde test edin, JavaScript nesneleriyle yüksek performanslı çözümler üretin.