Fonksiyonun Dışarıdan Değer Alması
Önceki fonksiyonlar konusunda da gördüğünüz gibi fonksiyonlar hem tanımlanırken hem de çağrılırken isimlerinin yanında parantez işaretleri vardır. Şayet fonksiyon çalışmak için dışarıdan bir bilgi almayacaksa tanımlarken ve çağırırken bu parantezlerin içi boş olmaktadır.
Bazense fonksiyonların içlerinde bulunan işlemleri, kendilerine fonksiyon dışından gönderilecek verilere göre yapmaları istenir. Bu durumda fonksiyonun alacağı bilgiler bu parantezlerin içinde belirtilir.
Sağ taraftaki örneği incelerseniz burada body kısmındaki 4 ayrı linkin tıklandığında aynı fonksiyonu çağırdıklarını görürsünüz. Bununla beraber her link tıklandığında farklı bir değeri fonksiyona göndermektedir.
Head kısmındaki fonksiyonu incelerseniz de tanımlarken parantez içinde bir değişken adı yazıldığını göreceksiniz. İşte fonksiyona çağrılırken gönderilen değer fonksiyon tarafından bu değişkene alınır ve fonksiyon içindeki işlemler bu değişken de kullanılarak yapılır.
Fonksiyonlar dışarıdan birden fazla değer alabilirler. Bu durumda değişkenlerin adları aralarına virgül konarak yazılır ve çağrılırken buradaki sıraya göre veriler gönderilir.
Örneğin;
function hesapla(adi, soyadi, numarasi, sinifi)
şeklinde tanımlanan bir fonksiyon,
hesapla("Ahmet", "Aksünger", 1111, "11E")
şeklinde çağrılabilir.
*** Bu tür bir fonksiyon body kısmındaki bir html elemanı tarafından çağrılacak ise şu konuda dikkatli olmak gerekir: Foksiyon çağrılırken gönderilen metinsel verilerin tırnak işareti arasına alınması gerekmektedir. Fakat fonksiyon bir olaya bağlı olarak çağrılacaksa, mesela onclick olayında çağrılacaksa, zaten onclick parametresinin de tırnakları olduğundan, içteki tırnaklar tek tırnak şeklinde yazılmalıdır. Yani şu şekilde çağrılmalıdır:
onclick="hesapla('Ahmet', 'Aksünger', 1111, '11E')"
javascript dışarıdan değer alan fonksiyon örnekleri, dışarıdan değer alan metot oluşturma
KONU İLE İLGİLİ ÖRNEKLER
Dışarıdan Değer Alan Fonksiyon ile Metin Rengi Değiştirme
|
Kendin Dene
|
Kendin Dene butonuna tıklayarak, kodları değiştirebilir ve sonucu görebilirsin.
function renk(a)
{
document.getElementById("yazi").style.color=a;
document.getElementById("yazi").style.border="1px solid " + a;
}
Html Kısmı:
<p>
<a href="#" onclick="renk('red')">Kırmızı</a>
<a href="#" onclick="renk('yellow')">Sarı</a>
<a href="#" onclick="renk('green')">Yeşil</a>
<a href="#" onclick="renk('blue')">Mavi</a>
</p>
<p id="yazi">Buradaki yazının ve kenarlığın rengi değişecek.</p>
12921 kez okundu.