Java Script Fonksiyonlar



user warning: Table './mc_hanciorg/cache_form' is marked as crashed and last (automatic?) repair failed query: UPDATE cache_form SET data = 'a:21:{s:6:\"choice\";a:3:{s:5:\"#type\";s:6:\"radios\";s:14:\"#default_value\";i:-1;s:8:\"#options\";a:7:{i:0;s:35:\"Sitede var olan içerik ve yazılar\";i:1;s:38:\"Sitenin görsel tasarımı ve renkleri\";i:2;s:54:\"Ziyaretçinin siteye yazılar ekleyip yorumlayabilmesi\";i:3;s:46:\"Sitenin adresi ve arama motorunda listelenmesi\";i:4;s:73:\"İnsanların çok fazla ziyaret ediyor olması ve onlarla iletişim ağı\";i:5;s:44:\"Sitenin arkaplan yazılımı ve alt yapısı\";i:6;s:47:\"Ben farklı şeyler düşünüyorum yazacağım\";}}s:4:\"vote\";a:3:{s:5:\"#type\";s:6:\"submit\";s:6:\"#value\";s:6:\"Oy ver\";s:7:\"#submit\";a:1:{i:0;s:9:\"poll_vote\";}}s:5:\"#node\";O:8:\"stdClass\":37:{s:3:\"nid\";s:2:\"72\";s:4:\"type\";s:4:\"poll\";s:8:\"language\";s:2:\"tr\";s:3:\"uid\";s:1:\"1\";s:6:\"status\";s:1:\"1\";s:7:\"created\";s:10:\"1266655218\";s:7:\"changed\";s:10:\"1266655313\";s:7:\"comment\";s:1:\"2\";s:7:\"promote\";s:1:\"1\";s:8:\"moderate\";s:1:\"0\";s:6:\"sticky\";s:1:\"1\";s:4:\"tnid\";s:1:\"0\";s:9:\"translate\";s:1:\"0\";s:3:\"vid\";s:2:\"72\";s:12:\"revision_uid\";s:1:\"1\";s:5:\"title\";s:37:\"Web sitesinde hangisi daha önemlidir\";s:4:\"body\";s:0:\"\";s:6:\"teaser\";s:358:\"* Sitede var olan içerik ve yazılar\n* Sitenin görsel tasarımı ve renkleri\n* Ziyaretçinin siteye yazılar ekleyip yorumlayabilmesi\n* Sitenin adresi ve arama motorunda listelenmesi\n* İnsanların çok fazla ziyaret ediyor olması ve onlarla iletişim ağı\n* Sitenin arkaplan yazılımı ve alt yapısı\n* Ben farklı şeyler düşünüyorum yazacağım\n\";s:3:\"log\";s:0:\"\";s:18:\"revision_timestamp\";s:10:\"1266655313\";s:6:\"format\";s:1:\"0\";s:4:\"name\";s:5:\"hanci\";s:7:\"picture\";s:0:\"\";s:4:\"data\";s:120:\"a:3:{s:7:\"contact\";i:0;s:18:\"admin_compact_mode\";b:1;s:13:\"form_build_id\";s:37:\"form-5bb20dab86db6430977269d8df6a74bb\";}\";s:7:\"runtime\";s:1:\"0\";s:6:\"active\";s:1:\"1\";s:6:\"choice\";a:7:{i:0;a:3:{s:6:\"chtext\";s:35:\"Sitede var olan içerik ve yazılar\";s:7:\"chvotes\";s:4:\"4727\";s:7:\"chorder\";s:1:\"0\";}i:1;a:3:{s:6:\"chtext\";s:38:\"Sitenin görsel tasarımı ve renkleri\";s:7:\"chvotes\";s:3:\"305\";s:7:\"chorder\";s:1:\"1\";}i:2;a:3:{s:6:\"chtext\";s:54:\"Ziyaretçinin siteye yazılar ekleyip yorumlayabilmesi\";s:7:\"chvotes\";s:3:\"210\";s:7:\"chorder\";s:1:\"2\";}i:3;a:3:{s:6:\"chtext\";s:46:\"Sitenin adresi ve arama motorunda listelenmesi\";s:7:\"chvotes\";s:3:\"182\";s:7:\"chorder\";s:1:\"3\";}i:4;a:3:{s:6:\"chtext\";s:73:\"İnsanların çok fazla ziyaret ediyor olması ve onlarla iletişim ağı\";s:7:\"chvotes\";s:3:\"214\";s:7:\"chorder\";s:1:\"4\";}i:5;a:3:{s:6:\"chtext\";s:44:\"Sitenin arkaplan yazılımı ve alt yapısı\";s:7:\"chvotes\";s:3:\"206\";s:7:\"chorder\";s:1:\"5\";}i:6;a:3:{s:6:\"chtext\";s:47:\"Ben farklı şeyler düşünüyorum yazacağım\";s:7:\"chvotes\";s:3:\"412\";s:7:\"chorder\";s:1:\"6\";}}s:10:\"allowvotes\";b:1;s:4:\"vote\";i:-1;s:4:\"path\";s:47:\"anket/web-sitesinde-hangisi-daha-onemlidir.html\";s:22:\"last_comment_timestamp\";s:10:\"1266655218\";s:17:\"last_comment_name\";s:0:\"\";s:13:\"comment_count\";s:1:\"0\";s:8:\"taxonomy\";a:0:{}s:5:\"files\";a:0:{}s:8:\"readmore\";b:0;s:5:\"links\";a:3:{s:11:\"comment_add\";a:4:{s:5:\"title\";s:15:\"Yeni yorum ekle\";s:4:\"href\";s:16:\"comment/reply/72\";s:10:\"attributes\";a:1:{s:5:\"title\";s:31:\"Bu sayfaya yeni bir yorum ekle.\";}s:8:\"fragment\";s:12:\"comment-form\";}i:0;a:3:{s:5:\"title\";s:13:\"Eski anketler\";s:4:\"href\";s:4:\"poll\";s:10:\"attributes\";a:1:{s:5:\"title\";s:43:\"Sitedeki anketlerin listesini görüntüle.\";}}i:1;a:3:{s:5:\"title\";s:9:\"Sonuçlar\";s:4:\"href\";s:15:\"node/72/results\";s:10:\"attributes\";a:1:{s:5:\"title\";s:28:\"Güncel anketi görüntüle.\";}}}}s:6:\"#block\";b:1;s:6:\"#cache\";b:1;s:6:\"#theme\";s:9:\"poll_vote\";s:11:\"#parameters\";a:4:{i:0;s:16:\"poll_view_voting\";i:1;a:3:{s:7:\"storage\";N;s:9:\"submitted\";b:0;s:4:\"post\";a:0:{}}i:2;r:18;i:3;b:1;}s:9:\"#build_id\";s:37:\"form-59c768d63339303dec2122b7be98a8f7\";s:5:\"#type\";s:4:\"form\";s:11:\"#programmed\";b:0;s:13:\"form_build_id\";a:4:{s:5:\"#type\";s:6:\"hidden\";s:6:\"#value\";s:37:\"form-59c768d63339303dec2122b7be98a8f7\";s:3:\"#id\";s:37:\"form-59c768d63339303dec2122b7be98a8f7\";s:5:\"#name\";s:13:\"form_build_id\";}s:7:\"form_id\";a:3:{s:5:\"#type\";s:6:\"hidden\";s:6:\"#value\";s:16:\"poll_view_voting\";s:3:\"#id\";s:21:\"edit-poll-view-voting\";}s:3:\"#id\";s:16:\"poll-view-voting\";s:12:\"#description\";N;s:11:\"#attributes\";a:0:{}s:9:\"#required\";b:0;s:5:\"#tree\";b:0;s:8:\"#parents\";a:0:{}s:7:\"#method\";s:4:\"post\";s:7:\"#action\";s:50:\"/javascript-dersleri/java-script-fonksiyonlar.html\";s:9:\"#validate\";a:1:{i:0;s:25:\"poll_view_voting_validate\";}}', created = 1555769837, expire = 1555791437, headers = '', serialized = 1 WHERE cid = 'form_form-59c768d63339303dec2122b7be98a8f7' in /home/hanci/domains/hanci.org/private_html/includes/cache.inc on line 112.

En iyi yazılımcı, az kodla çok şey yapabilendir. Acemi
yazılımcıların sayfalarca kod yazarak yaptığı programları, usta
yazılımcılar yarım sayfada yapabilir. Bunun inceliklerini hem bu
sayfada, hem de ileride yapacağımız ileri uygulamalarda
göstereceğim.

Diyelim ki programda bir sürü işlem yapacağız ama öyle bir işlem var
ki 50 defa yapacağız. (Mesela "Ali gel." yazdıracağız.) Programa bu
işlemi 50 defa yaptırmak için o işlem kodunu 50 defa yazdırmak
zorunda kalırız ve programımız sayfalarca sürebilir. Üstelik bu
işlem kodlarının birkaç satır değil de yarım sayfa sürmesi söz
konusu da olabilir. Bu durumda 50 defa o yarım sayfalık kodu yazmak
zorunda mı kalacağız?

Hayır. O yarım sayfalık işlem kodunu bir fonksiyon haline getiririz
ve 50 defa o fonksiyonu tek kelime olan fonksiyon ismi ile
çağırırız. Bu durumda 30-40 sayfalık bir kodu 3-4 sayfaya indirmiş
oluruz.

Peki bir işlem nasıl fonksiyon haline getirilir? İşte sayfamızın
konusu bu.

Fonksiyon Yapısı

Fonksiyonlar <head>...</head> bölümünde yer alır. Bir fonksiyonun
genel yapısı aşağıdaki gibidir:

function fonksiyonun adı (argüman1,
argüman2,....,argümanN)
{
İŞLEMLER
}

Fonksiyonlara koyduğumuz isim, fonksiyonu çağırmak için gereklidir.
Her fonksiyonun adı olmalıdır, zira fonksiyonlar bir olay (durum)
karşısında çağrılabilsin diye yapılır. Bu olay bir düğmenin
tıklanması, bir radyo veya kontrol kutusunun seçilmesi, bir HTML
nesnesinin üzerine fare ile gelinmesi olabilir. (HTML`de form
nesnelerini unutan arkadaşlarımıza tekrar bakmalarını salık veririm.
Bu olaylara ilerdeki Olaylar sayfasında ayrıntılı olarak
değineceğim. Ama şimdilik onclick (tıklanıldığı takdirde) olay
parametresini kullanacağız. Bu parametre form araçlarına olduğu
gibi, hiperlink, resim gibi diğer HTML nesnelerine de atanabilir.
onclick = Fonksiyon Adı() şeklinde kullanılır.

Argümansız Fonksiyonlar
Fonksiyonlar çeşitli argümanları kullanarak işlem yapabilirler.
Bu argümanlar değişken, nesne veya değer ifadesi olabilir. Bunun
yanısıra fonksiyonların argüman kullanma zorunluluğu yoktur;
aşağıdaki uygulama argümansız bir fonskiyon içermektedir.

Javascript:
<html>
<head>
<title>Argümansız Fonksiyon</title>
<script language="JavaScript">
//Fonksiyonu hazırlıyoruz.
function mesaj()
{
alert("Hiç bir mesajınız yok.");
document.write("Mesaja baktınız...");
}
</script>
</head>
<body>

<form>
Mesaja bakmak istiyorsanız, düğmeye basın.<br>
<!--Düğmeye basıldığında fonksiyon çağrılır.-->
<input type="button" onclick="mesaj()" value="Mesaj Kontrol">
</form>

</body>
</html>

Eeee, nasıl? Kendinizi programcı gibi hissetmeye başladınız mı? Daha
neler yapacağız, neler. Bu uygulamamızda mesaj() isimli argümansız
bir fonksiyon kullandık. Bu fonksiyonu kullanmamız şart değildi
elbette. Fonksiyon yaratmak yerine, kodları <body> bölümüne
yazabilirdik. Ancak bu fonksiyonu buradaki gibi bir defa değil de
beş-on yerde kullansaydık, fonksiyon sayesinde bir sürü kod
yazmaktan kurtulacaktık. (Bunu bir defa daha açıklamaya kalkarsam,
okuyucuların zekasını küçümsemiş olacağım.)

Argümanlı Fonksiyonlar
Şimdi de argümanlı bir fonksiyon yapalım. Aşağıdaki uygulamada
iki argümanlı bir fonksiyon göreceksiniz:

Javascript:
<html>
<head>
<title>Argümanlı Fonksiyon</title>
<script language="JavaScript">
//Fonksiyonu hazırlıyoruz.
function puan(a, b)
{
alert("Verdiğiniz notu göndermek için basın.");
document.write(a + " isimli aktriste " + b + " notunu verdiniz.");

}
</script>
</head>
<body>

<form>
<input type="button" value="Notu Gönderin" onclick= "puan(`Cameron
Diaz`, `100`)">
</form>

</body>
</html>

Bu uygulamada fonksiyonumuzun iki tane argümanı var. Bunlar: `Cameron
Diaz` ve `100`. Yanlarındaki ` işaretleri bu argümanların bir metin
ifadesi olduğunu anlatıyor.

Değer Atamalı Fonksiyonlar
Bir başka tür fonksiyon yapısı daha vardır. Buna değer atamlı
fonksiyon diyoruz. Bu fonksiyon türü argümanlı veya argümansız
olabilir. Ayırtedici özelliği yaptığı işlemleri bir değere
dönüştürüp, bu değeri değişkenlere veya HTML nesnelerine aktarması.
Bu fonksiyonun yapısı şöyledir:

function fonksiyonun adı (argüman1,
argüman2,....,argümanN)
{
İŞLEMLER
return değer
}

Buradaki return kodu, işlemlerle bulunan bir değeri fonksiyona
atamakta kullanılır. Aşağıdaki uygulamayla daha iyi anlayacaksınız.

Javascript:
<html>
<head>
<title>Değer Atamalı Fonksiyon</title>
<script language="JavaScript">
//Fonksiyonu hazırlıyoruz.
function ustubes(x)
{
x = x * x * x * x * x;
return x
}
</script>
</head>
<body>

<script language="JavaScript">
var a1, a2, a3, a4, a5, a6, a7, a8, a9;
//Dokuz değişkeni ustubes() fonksiyonunu kullanarak değer atanıyor.

a1 = ustubes(1);
a2 = ustubes(2);
a3 = ustubes(3);
a4 = ustubes(4);
a5 = ustubes(5);
a6 = ustubes(6);
a7 = ustubes(7);
a8 = ustubes(8);
a9 = ustubes(9);
document.write
("1,2,3,4,5,6,7,8 ve 9 sayılarının üstü beş hali sırasıyla aşağıda
yazılmıştır.<br>");
document.write
(a1 +", " + a2 +", " + a3 +", " + a4 +", " + a5 +", " + a6 +", " +
a7 +", " + a8 +", " + a9);
</script>
</body>
</html>

Yeni yorum gönder

Bu alanın içeriği gizli tutulacak ve açıkta gösterilmeyecektir.
CAPTCHA
Aşağıdaki resimde yer alan karakterleri kutucuğa doğru olarak yazınız
Image CAPTCHA
Enter the characters shown in the image.

Anket

Web sitesinde hangisi daha önemlidir: