JavaScript Dersleri

JavaScript’te Metotlar: Fonksiyonların Objelerle Buluşması

eminbasbayan

eminbasbayan

3 dk okuma
JavaScript’te Metotlar: Fonksiyonların Objelerle Buluşması
🔍 Büyütmek için tıklayın

JavaScript'te programlama yaparken sıkça karşımıza çıkan iki temel yapı vardır: fonksiyonlar ve objeler. Bu iki yapı, birlikte kullanıldığında ortaya çok güçlü bir araç çıkar: metotlar. Bu makalede, metotların ne olduğunu, nasıl tanımlandığını ve nasıl kullanıldığını adım adım ele alacağız. Konuyu daha iyi kavrayabilmek için özgün örneklerle ilerleyeceğiz.

Fonksiyonlar ve Metotlar Arasındaki Fark Nedir?

Bir fonksiyon, belirli bir görevi yerine getiren ve tekrar tekrar çalıştırılabilen bir kod parçasıdır. Örneğin:

function carp(a, b) { return a * b; }

Bu fonksiyon her çağrıldığında iki sayıyı çarpar ve sonucu döner. Bu yapıyı bağımsız bir fonksiyon olarak tanımlayabiliriz.

Ancak eğer bu fonksiyonu bir objenin içinde tanımlarsak, artık bu fonksiyona metot denir. Temel fark, metotların bir objeye ait olmasıdır.

Metot Nedir?

Metot, bir objenin içinde bulunan ve objeye ait bir işlevi gerçekleştiren fonksiyondur. Bu tanımı daha iyi anlayabilmek için basit bir örnek yapalım:

const hesapMakinesi = { topla: function(x, y) { return x + y; }, carp: function(x, y) { return x * y; } };

Burada topla ve carp fonksiyonları, hesapMakinesi adlı objeye ait olduğu için birer metot olarak adlandırılır.

Kullanımı ise oldukça basittir:

hesapMakinesi.topla(5, 3); // 8 hesapMakinesi.carp(4, 2); // 8

Her iki durumda da fonksiyon çağrılırken objenin ismi ile birlikte nokta (.) notasyonu kullanılır. Bu nokta notasyonu bize fonksiyonun objeye ait olduğunu belirtir.

JavaScript'teki Yerleşik Metotlar

JavaScript içerisinde tanımlı birçok objede yerleşik (hazır) metotlar vardır. Örneğin:

"kitap".includes("ki"); // true [10, 20, 30].slice(1); // [20, 30] Math.floor(3.7); // 3
  • "kitap".includes("ki") ifadesinde includes bir string metodudur.
  • [10, 20, 30].slice(1) bir dizi metodudur.
  • Math.floor ise Math objesine ait bir metottur.

Bu metotlar da aslında JavaScript’in kendi içinde tanımlanmış fonksiyonlardır, ancak bir objeye ait oldukları için metot olarak değerlendirilirler.

Kendi Metotlarımızı Tanımlamak

Şimdi örnek olarak bir geometri objesi oluşturalım ve içine çeşitli metotlar ekleyelim:

const geometri = { alanDikdortgen: function(kenar1, kenar2) { return kenar1 * kenar2; }, cevreDikdortgen: function(kenar1, kenar2) { return 2 * (kenar1 + kenar2); } };

Bu objeyi şu şekilde kullanabiliriz:

geometri.alanDikdortgen(4, 6); // 24 geometri.cevreDikdortgen(4, 6); // 20

Buradaki alanDikdortgen ve cevreDikdortgen fonksiyonları objeye ait olduğu için birer metottur.

Köşeli Parantez ile Metoda Erişim

Metotlara genellikle nokta ile erişilir (geometri.alanDikdortgen gibi). Ancak farklı bir erişim yöntemi daha vardır: köşeli parantez kullanmak.

geometri["cevreDikdortgen"](5, 7); // 24

Bu kullanım tarzı daha çok dinamik durumlarda (örneğin metodun adı bir değişkene bağlıysa) tercih edilir. Ancak normal şartlarda okunabilirliği yüksek olan nokta notasyonu kullanılır.

Daha Kısa Metot Yazımı (Shorthand Syntax)

JavaScript’in son sürümlerinde, objelere fonksiyon eklerken kullanılan yazım daha da sadeleştirildi. Önceden şöyle yazılırdı:

const ses = { konus: function() { return "Merhaba!"; } };

Yeni kısa yazım şekliyle aynı metodu şöyle tanımlayabiliriz:

const ses = { konus() { return "Merhaba!"; } };

Her iki kullanım da aynıdır. Sadece ikinci yöntem daha okunaklı ve kısadır. Çağrılması da aynı şekilde olur:

ses.konus(); // "Merhaba!"

Özet

  • Fonksiyon: Tek başına tanımlanmış bir işlemi yerine getirir.
  • Metot: Bir objeye ait olan fonksiyondur.
  • Metotlar, objeler üzerinden objeninAdi.metotAdi() şeklinde çağrılır.
  • JavaScript içerisinde yerleşik birçok metot zaten mevcuttur.
  • Biz de kendi objelerimiz için özel metotlar tanımlayabiliriz.
  • Yeni sürümlerde metot tanımlamaları daha kısa şekilde yapılabilir.

Etiketler

#Eğitimler#JavaScript Dersleri

İlgili Yazılar

Bu konuyla ilgili diğer yazılarımızı da inceleyebilirsiniz

Web Geliştirmede Neden JavaScript'e İhtiyacımız Var?
JavaScript Dersleri

Web Geliştirmede Neden JavaScript'e İhtiyacımız Var?

Web geliştirme, temel olarak üç ana yapı taşı üzerine kuruludur: **HTML, CSS ve JavaScript**. Bu üçlüden **HTML**, sayfanın iskeletini oluşturur, **CSS**, tasarımı ve görsel düzenlemeleri yapar

2 dk
JavaScript'e Giriş: JavaScript Nedir?
JavaScript Dersleri

JavaScript'e Giriş: JavaScript Nedir?

Web geliştirme yolculuğunuzda büyük bir adım atıyorsunuz! HTML ve CSS ile statik web sayfaları oluşturmayı öğrendiniz, ancak şimdi JavaScript ile sayfanıza hareket ve etkileşim katmanını eklemeye hazırsınız. JavaScript, web sayfalarını dinamik hale getiren ve kullanıcı etkileşimlerini yöneten

3 dk
JavaScript Değişkenler (Variables) Nedir?
JavaScript Dersleri

JavaScript Değişkenler (Variables) Nedir?

JavaScript, web geliştirme dünyasının en önemli dillerinden biridir. Dinamik web siteleri, interaktif uygulamalar, oyunlar ve animasyonlar gibi birçok alanda kullanılır. Ancak, bu tür gelişmiş uygulamalar oluşturabilmek için önce JavaScript'in temellerini anlamak gerekir. Bu

4 dk
JavaScript İlkel (Primitive) Veri Tipleri
JavaScript Dersleri

JavaScript İlkel (Primitive) Veri Tipleri

JavaScript, modern web geliştirmede vazgeçilmez bir programlama dilidir. Web sitelerini daha dinamik hale getirmek, etkileşim eklemek ve hatta oyunlar ve uygulamalar geliştirmek için kullanılır. Ancak, bu eğlenceli ve güçlü özelliklere ulaşmadan önce, JavaScript'in temellerin

4 dk
JavaScript'te Sayılar ve Matematiksel Operatörler
JavaScript Dersleri

JavaScript'te Sayılar ve Matematiksel Operatörler

JavaScript, modern web geliştirmede en yaygın kullanılan programlama dillerinden biridir. Bu dilde çalışırken sayılarla sıkça işlem yaparız. İster bir hesap makinesi uygulaması geliştiriyor olun, ister bir oyundaki puan sistemini kodluyor olun, sayılar kaçınılmaz bir parçadır. JavaScri

4 dk
JavaScript'te Boolean Veri Tipi
JavaScript Dersleri

JavaScript'te Boolean Veri Tipi

JavaScript'ı öğrenmeye yeni başlayanlar için veri tipleri oldukça önemlidir. Bu yazıda, en temel veri tiplerinden biri olan **Boolean (mantıksal) değerleri** inceleyeceğiz. Boolean değerleri, programlamada sıklıkla kullanılan ve kodlarımızın man

3 dk