JavaScript'te özelleştirilmiş işlevler ve fonksiyon nesneleri oldukça önemlidir Özelleştirilmiş işlevler, belirli parametreler kullanarak kullanıcı ihtiyacına göre değiştirilebilen fonksiyonlardır Bu sayede aynı fonksiyon farklı senaryolarda kullanılabilir Fonksiyon nesneleri ise, bir işlevi bir değişkene atayarak oluşturulur ve bu sayede işlev farklı değişken adlarıyla kullanılabilir hale gelir
JavaScript'te özelleştirilmiş işlevler ve fonksiyon nesnelerinin kullanımı kolaydır ve kod yazarken büyük kolaylıklar sağlar Fonksiyonlar farklı özelliklerle donatılarak ihtiyacımıza özgü işlemler gerçekleştirilebilir Fonksiyon nesneleri ve özelleştirilmiş işlevler birlikte kullanıldığında, kodlar daha da esnek hale gelir ve kullanımı daha da kolaylaşır
Fonksiyon nesneleri oluştur
Özelleştirilmiş işlevler ve fonksiyon nesneleri, JavaScript'te oldukça önemli bir yere sahiptir. Özelleştirilmiş işlevler; kullanıcının ihtiyacına göre belirli parametrelerle değiştirilebilen fonksiyonlardır. Bu sayede bir işlev, birçok farklı senaryoda kullanılabilir hale getirilir. Fonksiyon nesneleri ise, bir işlevi bir değişkene atayarak oluşturulur. Bu da bir işlevin farklı bir değişken adıyla kullanılmasını sağlar.
JavaScript'te özelleştirilmiş işlevler ve fonksiyon nesnelerinin kullanımı oldukça kolaydır ve kod yazmakta büyük kolaylıklar sağlar. Bu sayede, fonksiyonları farklı özelliklerle donatarak ihtiyacımıza özgü işlemler gerçekleştirebiliriz. Ayrıca, fonksiyon nesneleri ve özelleştirilmiş işlevler birlikte kullanıldığında, kodlar daha da esnek hale gelir ve kullanımı daha da kolaylaşır.
Özelleştirilmiş İşlev Nedir?
JavaScript’te özelleştirilmiş işlevler, kullanıcıların ihtiyaçlarına göre değiştirilebilen fonksiyonlardır. Bu fonksiyonlar, belirli parametreler kullanılarak kişiselleştirilebilir ve farklı durum ve ihtiyaçlar için kullanılabilir. Bu da programcılara fonksiyonları her defasında yeniden yazma ihtiyacı vermeden, kodlarını daha etkili ve verimli bir şekilde kullanma özgürlüğü sağlar. Özelleştirilmiş işlevler, küçük işlemlerden çok büyük, karmaşık işlemlere kadar her türden işlemler için kullanılabilir.
Özelleştirilmiş işlevler, fonksiyonlarla aynı şekilde çalışır ancak daha fazla esnekliğe sahiptir. Fonksiyonlar sabit bir şekilde kullanılırken, özelleştirilmiş işlevler belirli durum ve koşullara göre sürekli olarak değiştirilebilir. Bu sayede sürekli değişen ihtiyaçlara göre kendi kodlarını oluşturma özgürlüğü verir.
Fonksiyon Nesneleri Nasıl Oluşturulur?
Bir JavaScript işlevi, başka bir değişken olarak kullanılabilen bir nesneye atanabilir. Bu nesne sonra işlev gibi çağrılabilir veya yeni bir nesne gibi kullanılabilir. Bu şekilde, fonksiyonlar ve nesneler arasındaki sınırın ortadan kalkmasıyla kod yazımı daha esnek ve açık hale gelir.
Bir fonksiyon nesnesi oluşturmak için, öncelikle bir işlev tanımlamalısınız. Daha sonra bu işlevi bir değişkene atayabilirsiniz. Aşağıdaki örnek bunu nasıl yapabileceğinizi gösterir:
function sayHello() { alert('Merhaba!');}var helloFunction = sayHello;
Bu örnekte, "sayHello" adlı işlev tanımlanıp, "helloFunction" adlı bir değişkene atanmıştır. Şimdi "helloFunction" adlı değişken, "sayHello" adlı işlev gibi çalıştırılabilir. Aşağıdaki örnek bunu gösterir:
helloFunction(); // "Merhaba!" ile bir bildirim kutusu açar.
Bir işlevi başka bir değişkene atamak, fonksiyonları daha fonksiyonel bir yaklaşımla kullanmanıza olanak sağlar. İşlevleri bir diziye, nesneye, hatta başka bir işleve bile atayabilirsiniz.
Bir işlev tanımladığınızda, bu işlev bir değer olarak kabul edilir. Bu değer başka değişkenlere atanabilir, başka işlevlerle bir araya getirilebilir ve hatta diziler gibi daha karmaşık veri yapılarına dahil edilebilir.
İsimlendirme ve Değişken Kullanımı
İsimlendirme ve Değişken Kullanımı
JavaScript'te fonksiyon nesneleri oluştururken, fonksiyonun ismi doğru bir şekilde seçilmelidir. Fonksiyon isimleri açık, anlaşılır ve kısa olmalıdır. İsimler, küçük harflerle yazılmalı ve birden fazla kelime kullanılması halinde kelime aralarında boşluk ya da alt çizgi (_) kullanılmalıdır.
İsimlendirme Örneği | Doğru Değil |
---|---|
hesaplaToplam | ht |
urunFiyatiBul | urunfiyatibul |
ogrenciAdiSoyadi | ogrenciadis |
Fonksiyon nesnelerinde değişken kullanımı da önemlidir. Fonksiyon içinde kullanılan değişkenlerin isimleri, mümkün olduğunca açık bir şekilde tanımlanmalıdır. Değişken isimleri, fonksiyon isimleri gibi küçük harflerle ve birden fazla kelime kullanılıyorsa kelime aralarında boşluk ya da alt çizgi (_) kullanılmalıdır. Değişkenlerin isimlendirmesi, özel bir anlamı olmayan "x" ya da "y" gibi isimlerden sakınılmalıdır.
Aşağıdaki tabloda, doğru değişken kullanımı örnekleri gösterilmiştir:
- isim: müşteriAdi
- adet: urunAdet
- faturaTarihi: ftrTarih
İyi bir fonksiyon yazarken, fonksiyonun isimlendirilmesi ve değişken kullanımı kadar, doğru kapsam (scope) kullanımı da önemlidir. Kapsam hakkında bilgilendirme için diğer paragraflara bakabilirsiniz.
Örnek
Bir fonksiyon nesnesi oluştururken, isimlendirme doğru bir şekilde yapılmalıdır. Bu, kolay okunabilir kodlar oluşturmak ve ileride kodda yapılacak olan değişiklikleri kolay bir şekilde yönetmek için oldukça önemlidir. Örneğin;
function | adiSoyadi | () | { |
} |
Yukarıdaki örnekte, fonksiyonun adı 'adiSoyadi' olarak belirlenmiştir. Ayrıca, fonksiyonun içi henüz boş olsa bile uygun kod yazımı kullanılmıştır.
Fonksiyonun adı, fonksiyonu tanımlayan özelliği yansıtmalıdır. Ayrıca, camelCase adı kullanarak daha okunaklı bir kod yazımı sağlanabilir.
- Fonksiyon adları, küçük harflerle başlayan kelimelerden oluşmalıdır.
- Kelimeler arasında boşluk yerine büyük harf kullanılmalıdır.
- Mümkün olan durumlarda, adlar tek kelimeyle sınırlı tutulmalıdır.
- Fonksiyon adlarının tamamı anlaşılır olmalıdır. Kısaltmalar yerine tam kelime kullanmak tercih edilmelidir.
Bu kurallara uymanız, kod yazımınızı düzenli ve okunaklı kılmakla beraber, ileride yeni fonksiyonlar eklenmesi veya güncellenmesi gerektiğinde de işlerinizi kolaylaştıracaktır.
Diğer Değişken Kullanımı Örnekleri
Fonksiyon nesneleri oluşturulurken, doğru değişken kullanımına önem verilmelidir. Örneğin, bir fonksiyon nesnesi oluşturulurken, değişken ismi genellikle küçük harfle başlar ve fonksiyon adının anlaşılmasına yardımcı olacak şekilde düzenlenir. Ayrıca, birden fazla kelime varsa aralarına alt çizgi eklenir. Aşağıdaki örnek doğru bir değişken kullanımı için bir örnektir:
Fonksiyon Nesnesi Adı | Tanımı |
---|---|
hesapla_toplam | Bir dizideki sayıların toplamını hesaplar. |
listele_kayitlar | Bir veri tabanındaki kayıtları listeleyen bir fonksiyon. |
olustur_kullanici | Bir kullanıcı hesabını oluşturan bir fonksiyon. |
Doğru değişken kullanımı sadece isimlendirmeyle sınırlı kalmaz. Aynı zamanda, değişken kullanımında da doğru kararlar verilmelidir. Örneğin, fonksiyon nesnesinde kullanılan bir değişkenin global kapsamda tanımlanması durumunda, bu değişkene diğer fonksiyon nesnelerinden de erişilebilir. Bunun sonucunda, programın çalışması beklenenden farklı sonuçlar verebilir ve hatalara neden olabilir. Bu nedenle, fonksiyon nesnesi içinde tanımlanacak değişkenlerin sadece o fonksiyon içinde erişilebilir olması gerekmektedir.
Kapsam (Scope)
JavaScript'te, fonksiyon nesnelerinin kapsamı oldukça önemlidir. Kapsam, bir değişkenin erişimini belirler ve değişkenlerin belirli bir kod bloğu içinde veya dışında kullanılabilirliğini kontrol eder.
Fonksiyon nesnelerinin kapsamı, üç farklı türde oluşabilir: global kapsam, yerel kapsam ve blok kapsamı.
- Global Kapsam: Bu kapsam, herhangi bir fonksiyon bloğu olmadan, kodun en üst düzeyindeki değişkenlerin tanımlandığı kapsamdır. Bu değişkenlere, kodun herhangi bir yerinde erişilebilir.
- Yerel Kapsam: Yerel kapsam, bir fonksiyonun içinde tanımlanan değişkenlerin kullanılabildiği kapsamdır. Bu değişkenler, dışarıdan erişilemezler ve yalnızca fonksiyonun içinde kullanılabilirler.
- Blok Kapsamı: ES6 standartıyla birlikte, blok kapsamı da tanıtılmıştır. Bu kapsam, özellikle "let" ve "const" anahtar kelimeleriyle tanımlanan değişkenlerin kullanıldığı bloklar için geçerlidir. Bunlar genellikle "if" veya "for" döngüleri gibi kod bloklarıdır.
Fonksiyon nesneleri içinde, kapsam dışında kalan değişkenlerin erişimi, global değişkenler gibi kullanılabilir. Fonksiyonlar içinde, kapsam dışındaki değişkenlerin erişimine karar vermek için "this" anahtar kelimesi kullanılır. "this" anahtar kelimesi, bir nesne içindeki değişkenlere erişmek için kullanılır ve nesne içinde bir değişken varsa, bu değişkene erişebilirsiniz.
Örneğin, aşağıdaki kod bloğunu ele alalım:
var x = 10;function f1(){ var y = 20; console.log(x); console.log(y);}function f2(){ var z = 30; console.log(x); console.log(z);}f1();f2();
Bu durumda, "x" değişkeni global kapsamda tanımlanmıştır ve fonksiyonların her ikisi de bu değişkene erişebilir. Ancak "y" ve "z" değişkenleri, sırasıyla f1() ve f2() fonksiyonlarına özgüdür. Bu nedenle, f1() fonksiyonu y değişkenine erişebilirken, f2() fonksiyonu bunu yapamaz.
Özelleştirilmiş İşlev Kullanımı
Özelleştirilmiş işlevler, JavaScript'te belirli durumlarda kullanıcıya daha uygun çözümler sunmak için kullanılır. Öncelikle, bir özelleştirilmiş işlev oluşturulurken, kullanılacak olan anahtar kelimenin "function" olması gerekiyor.
Bir özelleştirilmiş işlev oluşturmak, parametreler oluşturarak yapılır. Bu parametreler, bir fonksiyonun ne yapacağına dair bilgiler içeren bir yapıdır. Parametrelerin belirli bir sıralaması vardır ve sırayı belirtmek için "()" kullanılır.
Özelleştirilmiş işlevlerde, atama işlemi yaparken dikkatli olunmalıdır. İşlem yapılacak olan değişkenin, özelleştirilmiş işlevin sonucu ile eşleşmesi gerekir. İşlem yapılacak olan değişken için önceden atanan bir değer varsa, bu değer işlem yapılırken etkilenmez.
Özelleştirilmiş işlevlerde, parametrelerin yanı sıra, değişkenler de kullanılabilir. Bu değişkenler, özelleştirilmiş işlevin kullanıcının ihtiyacına göre belirlenmesine yardımcı olur. Özellikle, birden fazla kullanıcının ihtiyaçları birbirinden farklıysa, özelleştirilmiş işlevlerin kullanımı önem kazanır.
Tablo olarak, özelleştirilmiş işlevler ve parametrelerinin bir arada kullanımına dair detaylı bilgiler de sunulabilir:
Özelleştirilmiş İşlev | Başlangıç Parametresi | Değişken Kullanımı |
---|---|---|
örnek_islev | x | y, z |
islev1 | a | b, c, d |
islev2 | m | n, q |
Özelleştirilmiş işlevler, JavaScript'te oldukça yaygın bir şekilde kullanılmaktadır. Hem parametrelerin hem de değişkenlerin kullanımına dair detaylı bilgiler, örnekler ve tablolar ile birlikte özelleştirilmiş işlevlerin oluşturulması ve kullanımı anlatılmıştır.
Parametreler
Özelleştirilmiş işlevler kullanırken, işlevin farklı durumlar için kullanılabilmesi için değiştirilebilir parametreler belirleyebilirsiniz. Parametre, işlevin içinde kullanılabilecek bir yer tutucudur. Bu parametre, kullanıcının isteği doğrultusunda değişebilir.
Parametreler, işlevin içindeki kodun kullanıcının ihtiyacına göre çalışmasını sağlar ve kodun daha esnek olmasını mümkün kılar. Örneğin, bir hesaplama işlevi yazıyorsanız, hesaplamanın yapılması için gerekli olan sayılar parametre olarak geçirilebilir ve kullanıcı, işlevi kullanırken farklı sayıları girdiğinde sonucun değişmesini sağlayabilir.
Parametreler, işlevlerin çalışmasına esneklik kazandırır ve programlama dili içindeki belirli değerleri belirlemeye yarar. Parametreler, işlevin başka bir noktada yeniden kullanımını da mümkün kılar.
Parametreler, işlevlerin tanımlanması sırasında kullanıcının işlemin yapılabilmesi için belirlediği değişkenleridir. Belirtilen parametrelerin kullanıldığı fonksiyonlarda, bu parametrelerin alacağı değerler belirtilebilir. Bu sayede aynı işlev, farklı değerler alarak farklı işlemler yapabilir.
Örneğin, aşağıdaki özelleştirilmiş işlevde bir sayının karesini hesaplamak için "sayi" adında bir parametre kullanılmaktadır:
Kod | Açıklama |
---|---|
function sayininKaresi(sayi) { return sayi * sayi;} | Bir sayının karesini hesaplar. |
Yukarıdaki örnekte, işlevin içinde "sayi" adında bir parametre kullanılıyor. Bu parametre, işlevin içinde kullanılacak sayıyı belirlemek için kullanılır. Parametre olarak girilen sayının karesi, işlevin sonucu olarak geri döndürülür.
Parametrelerin kullanımı, işlevlerin esnekliğini arttırır ve farklı işlemler yapılmasını sağlar. Kullanıcıların farklı parametrelerle aynı işlevi kullanabilmesi, kodun daha kullanışlı hale gelmesini sağlar.
Fonksiyon Nesneleri ve Özelleştirilmiş İşlevlerin Kullanımı
JavaScript'te fonksiyon nesneleri ve özelleştirilmiş işlevleri bir arada kullanmak oldukça faydalıdır. Fonksiyon nesneleriyle, birden fazla işlevi bir araya getirerek daha işlevsel hale getirebilirsiniz. Özelleştirilmiş işlevler ise daha özelleştirilmiş ve belirli parametrelerle değiştirilebilir işlevleri ifade eder.
Bir fonksiyon nesnesi oluşturarak, bu nesneyi özelleştirilmiş işlevlerde kullanabilirsiniz. Örneğin, bir çarpma işlemi yapmak için a ve b parametrelerine sahip bir çarpma fonksiyonu oluşturabilirsiniz. Ardından bu fonksiyon nesnesine "carpmaIslemi" adını vererek, özelleştirilmiş çarpma işlevi olarak kullanabiliriz. Bu sayede fonksiyon nesneleri ve özelleştirilmiş işlevler bir arada kullanarak, daha işlevsel ve özelleştirilmiş işlemler gerçekleştirebilirsiniz.
Ayrıca, fonksiyon nesneleri ve özelleştirilmiş işlevler bir arada kullanırken, dikkat etmeniz gereken en önemli nokta isimlendirme ve değişken kullanımıdır. Fonksiyon nesneleri için isim düzgün bir şekilde seçilmeli ve değişken kullanımı doğru bir şekilde yapılmış olmalıdır. Bunun yanı sıra, fonksiyon nesnelerinin kapsamı hakkında da doğru bilgilere sahip olmalısınız.
- Özelleştirilmiş işlevlerle birlikte fonksiyon nesnelerini kullanarak daha özelleştirilmiş işlemler gerçekleştirebilirsiniz.
- İsimlendirme ve değişken kullanımı gibi dikkat edilmesi gereken konular mevcuttur.
- Daha karmaşık işlemler gerçekleştirmek için fonksiyon nesneleri ve özelleştirilmiş işlevleri bir arada kullanabilirsiniz.
Unutulmamalıdır ki, fonksiyon nesneleri ve özelleştirilmiş işlevlerin doğru kullanımı, JavaScript kodlarınızın daha sade ve anlaşılır olmasını sağlar.
Örnekleme
Fonksiyon nesneleri ve özelleştirilmiş işlevlerin birleştirilmesiyle çok daha dinamik ve özelleştirilmiş bir yapı elde etmek mümkündür. Örneğin, bir güncelleme işlevi oluşturmak için bir fonksiyon nesnesi ve bir özelleştirilmiş işlev kullanarak çok etkili bir sonuç alınabilir.
Bir örnek olarak, bir dizi araç için bir güncelleme işlevi oluşturmak istediğimizi varsayalım. Fonksiyon nesnesi olarak, her aracın ayrıntılarını içeren bir nesne oluşturabiliriz. Özelleştirilmiş işlevimiz, güncelleme işleminin nasıl yapılacağı hakkında bilgi içeren bir fonksiyon olacaktır.
İlk adım olarak, araçları içeren bir nesne oluşturuyoruz:
Araç | Marka | Model | Yıl | Fiyat |
---|---|---|---|---|
Araba | Toyota | Corolla | 2018 | 120.000 TL |
Motosiklet | Harley-Davidson | Fat Boy | 2019 | 180.000 TL |
Bisiklet | Giant | Trance | 2020 | 25.000 TL |
Sonra, her araca ait ayrıntıları içeren bir fonksiyon nesnesi oluşturuyoruz:
var araba = { marka: "Toyota", model: "Corolla", yil: 2018, fiyat: 120000};var motosiklet = { marka: "Harley-Davidson", model: "Fat Boy", yil: 2019, fiyat: 180000};var bisiklet = { marka: "Giant", model: "Trance", yil: 2020, fiyat: 25000};
Ardından, bir özelleştirilmiş işlev tanımlayarak güncelleme işlemi için bir fonksiyon oluşturuyoruz:
function aracGuncelle(arac, marka, model, yil, fiyat) { arac.marka = marka; arac.model = model; arac.yil = yil; arac.fiyat = fiyat;}
artık bu iki yapıyı birleştirerek, araç bilgilerini güncelleme işlemini gerçekleştirebiliyoruz:
aracGuncelle(araba, "Ford", "Focus", 2019, 135000);aracGuncelle(motosiklet, "Honda", "Gold Wing", 2020, 210000);aracGuncelle(bisiklet, "Specialized", "Stumpjumper", 2021, 30000);
Bu işlev sayesinde, her araç için ayrı ayrı güncelleme işlemleri yapmak yerine tek bir işlem ile tüm araçlarda değişiklik yapabiliyoruz. Bu nedenle, özelleştirilmiş işlevler ve fonksiyon nesnelerinin birleştirilmesiyle çok daha dinamik ve özelleştirilmiş bir yapı elde etmenin mümkün olduğunu görmekteyiz.