JavaScript Nesneler (10.Ders) – Masif Dinamik
javascript-dersleri

JavaScript Nesneler (10.Ders)

Gerçek Hayattaki Nesneler, Özellikler ve Yöntemler

Gerçek hayatta bir araba bir nesnedir.
Bir araba ağırlık ve renk gibi özelliklere (properties) ayrıca başlatma ve durdurma gibi yöntemlere (methods) sahiptir:
Nesneler
(Object)
Özellikler
(Properties)
Yöntemler
(Methods)
arabanin.markasi = Fiat arabanin.modeli = 500
arabanin.agirligi = 850kg
arabanin.rengi = beyaz
arabayi.calistir()
arabayi.sur()
arabayi.frenle()
arabayi.durdur()
Tüm arabalar aynı özelliklere sahiptir, ancak özellik değerleri arabadan arabaya değişir.
Tüm arabalar aynı yöntemlere sahiptir, ancak yöntemler farklı zamanlarda gerçekleştirilir.

JavaScript Nesneleri

JavaScript değişkenlerinin veri değerleri için bir dijital sandık olduğunu zaten öğrendiniz.
Bu kod, car adlı bir değişkene basit bir değer (Fiat) atar:
var car = "Fiat";
Nesneler de değişkenlerdir. Ancak nesneler birçok değer içerebilir.
Bu kod, car adlı bir değişkene birçok değer (Fiat, 500, beyaz) atar:
var car = {type:"Fiat", model:"500", color:"white"};
Değerler  isim:değer(name:value) çiftleri (iki nokta üst üste ile ayrılmış) olarak yazılır.
JavaScript nesneleri, özellikler veya yöntemler adı verilen adlandırılmış değerler için dijital sandıklardır.

Nesne Tanımlama

JS nesnesi tanımlamak için object literal kullanırsınız.
var person = {firstName:"John", lastName:"Doe", age:50, eyeColor:"blue"};
Boşluklar ve satır kesmeleri hani entera bastığımızda bir alt satıra geçmek önemli değildir. Bir nesne tanımı birden fazla satıra yayılabilir:
var person = {
  firstName: "John",
  lastName: "Doe",
  age: 50,
  eyeColor: "blue"
};

Nesne Özellikleri (Object Properties)

Javascript nesnelerinde name:values çiftleri özellikler olarak çağırılırlar.

Özellik
(Property)
Özellik Değeri
(Property Value)
firstNameJohn
lastNameDoe
age50
eyeColorblue

Nesne Özelliklerine Erişme (Accessing Object Properties)

Nesne özelliklerine iki şekilde erişebilirsiniz:
objectName.propertyName
ya da
objectName["propertyName"]

Örnek 1

person.lastName;

 

Örnek 2

person["lastName"];

Nesne Yöntemleri (Object Methods)

Nesnelerin de yöntemleri olabilir.
Yöntemler nesneler üzerinde gerçekleştirilebilecek eylemlerdir.
Yöntemler fonksiyonlarda fonksiyon tanımları olarak saklanır.
Özellik
(Property)
Özellik Değeri
(Property Value)
firstNameJohn
lastNameDoe
age50
eyeColorblue
fullNamefunction() {return this.firstName + ” ” + this.lastName;}
Yöntem, özellik olarak depolanan bir işlevdir. Yukarıda gördüğünüz gibi fullName özelliği bir method barındırıyor.
var person = {
  firstName: "John",
  lastName : "Doe",
  id       : 5566,
  fullName : function() {
    return this.firstName + " " + this.lastName;
  }
};

The this Keyword

Bir fonksiyon tanımında, bu işlevin “sahibini” ifade eder.
Yukarıdaki örnekte, bu, fullName fonksiyonuna “sahip” olan kişi nesnesidir.Yani person.
Bu konuyu ileriki derslerde daha detaylı olarak işleyeceğiz. Şimdilik bunları bilmeniz yeterli.
Özetle: this bildiğiniz zamir. Yani yukarıda person.firstName yazmak yerine this.firstName yazdık.

Nesne Yöntemlerine Erişim

Bir nesne yöntemine aşağıdaki sözdizimiyle (syntax) ile erişirsiniz:
objectName.methodName()
name = person.fullName();
() Parantezleri olmayan bir yönteme erişirseniz, işlev tanımını döndürür:
name = person.fullName;

Dizeleri, Sayıları ve Boolenları Nesne Olarak Bildirmeyin!

Bir JavaScript değişkeni “new” anahtar kelimesiyle bildirildiğinde, değişken bir nesne olarak oluşturulur:
var x = new String();        // Declares x as a String object
var y = new Number();        // Declares y as a Number object
var z = new Boolean();       // Declares z as a Boolean object
Dize, Sayı ve Boolean nesnelerinden kaçının. Kodunuzu karmaşıklaştırır ve yürütme hızını yavaşlatır.
Bu öğreticinin ilerleyen bölümlerinde nesneler hakkında daha fazla bilgi edineceksiniz.

 

 

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir


Yeni Yazılara Abone Ol



© Copyright 2020, Masif Dinamik