Geri Değer Döndüren Fonksiyonlar ve Return Komutu
Bu konuya programlama dilinde hazır halde bulunan fonksiyonlardan biriyle örnek vererek başlayalım. Math sınıfına ait pow metodu dışarıdan iki değer alan ve birinci sayının ikinci sayı derecesinden kuvvetini hesaplayarak sonucu geri döndüren bir fonksiyondur. Geriye değer döndürdüğü için de aşağıdaki gibi bir değişkene eşitlenerek kullanılabilir.
var a=Math.pow(2,4);
document.write(a);
Yukarıdaki örnekte 2'in 4. kuvveti fonksiyon tarafından hesaplanarak sonuç geri döndürülür ve a değişkenine atanır. Bu fonksiyonu hazır kullanmayıp kendimiz yazmak istersek:
function kuvvet(taban, us)
{
var i, sonuc;
sonuc=1;
for(i=1;i<=us;i++)
{
sonuc=sonuc*taban;
}
document.write(sonuc);
}
Yukarıda yazdığımız fonksiyon verilen sayının kuvvetini hesaplar ve ekrana yazar. Fakat biz bu fonksiyonu herhangi bir yere eşitleyemeyiz. Örneğin a=kuvvet(3,5) şeklinde kullanamayız. Çünkü bu fonksiyon geriye bir değer döndürmüyor.
Şimdi return komutu ile sonuc değişkeninin değerini geri döndürelim.
function kuvvet(taban, us)
{
var i, sonuc;
sonuc=1;
for(i=1;i<=us;i++)
{
sonuc=sonuc*taban;
}
return sonuc;
}
Artık fonksiyonu istedimiz yere eşitleyebilir hatta matematiksel işlemler içerisinde kullanabiliriz. Örneğin;
var x = kuvvet(2,4) + kuvvet(3,5) - kuvvet(4,2)
Kuvvet fonksiyonu her çağrıldığında oluşan sonuç geri döndürülür ve ilgili yere o işlemin sonucu yazılır.
***Bir fonksiyon sadece bir değer geri döndürebilir. Aksi saçma olur zaten.
javascript, geri değer döndüren fonksiyon oluşturma, geri değer döndüren metot örnekleri
KONU İLE İLGİLİ ÖRNEKLER
JavaScript Kombinasyon Hesaplama Örneği ve Kodları
|
Kendin Dene
|
Kendin Dene butonuna tıklayarak örneğin kodlarını görebilir, değiştirebilir ve sonucu görebilirsin.
Örneğimizde öncelikle faktöriyel hesaplayan aşağıdaki gibi bir fonksiyon oluşturulmuştur. Bu fonksiyon kendisine gelen sayının faktöriyelini hesaplayarak sonucu geri döndürmektedir.
Butona tıklandığında bu fonksiyon başka yerden çağrılarak kullanılmaktadır.
function faktoriyel(sayi)
{
var i, sonuc;
sonuc=1;
for(i=1;i<=sayi;i++)
{
sonuc=sonuc*i;
}
return sonuc;
}
20448 kez okundu.