|
|
 |
« 16-01-2008, 16:42 » |
|
I. PROGRAM YAPISI Bir Javascript programı, sınırlı bir alanda ya da belli etiketler arasında yazılan komut ve diğer bileşenlerden oluşur.
A. DEYİMLER Deyimler scriptin akışını sağlarlar. JavaScript içinde koşullu ifadeler, döngüler, nesne işlemler ve diğer tanımlama işlemleri belli deyimlerle yerine getirilir. Deyimler dilin komutlarıdır denebilir.
JavaScript deyimleri bir noktalı virgül ( işareti ile sonlanır. Bu genellikle bir koşul olmasa da, birden çok deyimin aynı satırda yazılması için bir zorunluluktur.
B. KOŞULLU İFADELER Koşullu ifadeler program akışı içinde yönlenme ve karar verme olanağı sağlar.
1. if...else
If deyimi bir koşulu değerlendirerek bir blok deyimin işletilmesini ya da işletilmemesini sağlar. Seçimlik olarak bir else deyimi ayrıca ikinci bir blok deyimin birinci bloğa alternatif olarak işletilmesini sağlar. Basit biçimde else olmadan koşula bağlı olarak deyim işletilir: Eğer koşul doğruysa deyim işletilir, koşul doğru değilse deyimler atlanmış olur:
Yapısı:
if (koşul)
{ deyimler-1; }
else
{ deyimler-2; }
2. switch (Netscape & MS IE 4)
Case yapısı olarak bilinir. Bir değere göre değişik seçeneklerin işletilmesini sağlayan bir diğer karar yapısıdır.
Genel Yapısı:
switch (ifade){
case etiket:
deyim;
break;
case etiket:
deyim;
break;
...
default : deyim;
}
Örneğin bir değere göre değişik hesaplamalar yapılacaksa bu yapı kullanılabilir:
Örnek:
switch (ucret){
case >0 AND <1000 :
deyimler;
break;
case ">1001 AND <10000:
deyimler;
break;
case >10001 AND <20000 :
deyimler;
break;
default : deyimler;
}
3. Döngüler
JavaScript kontrol yapıları içinde değişik döngüler vardır. Bunların başında for, do while ve break-continue yapısı gelir. For...Next Kullanımı:
for döngüsünde koşul sağlaması bozuluncaya kadar döngü sürdürülür. Örneğin bir sayısal değerden büyük oluncaya kadar döngüyü sürdürmek gibi.
Yapısı:
for (başlangıç değeri; koşul; artırım)
{ deyimler; }
Örnek:
for (i=0; i<10; i++)
{ deyimler; }
Do...While Kullanımı:
Diğer bir döngü deyimi ise blok deyimi belli bir koşulun false oluncaya kadar sürdürmesini sağlar.
Yapısı:
do
{ deyimler;}
while (koşul)
While Kullanımı:
Yalnız başına While'ın kullanımı ise şu şekildedir:
Yapısı:
while (koşul)
{ deyimler; }
Nesne İşlemleri:
Nesne işlemlerinde yaygın olarak kullanılan yapılardan birisi For..in dir.
For...in Yapısı:
For-in yapısı nesne işlemlerinin bir döngü içinde yapılmasını sağlar.
Yapısı:
for (değişken in nesne)
{ deyimler; }
Örneğin araba adlı bir nesnenin renk, fiyat, motor, silindir, model gibi çok sayıda değişik özellikleri şu şekilde listelenebilir:
Örnek:
var kayit= "araba<br><br>"
for (var ozellik in araba)
{kayit+= ozellik+ " = " + araba[ozellik] + "<BR>"}
kayit+= "<br>"
document.write(kayit) II. FONKSİYONLAR Bir fonksiyon bir dizi deyimin bir blok olarak kullanılmasını sağlar. Fonksiyonlar, çağırılarak çalışan bir çalışma şekline sahiptir. Bunun anlamı, fonksiyon bir hesaplamayı yapar. Bu hesaplamadan yararlanabilmek için fonksiyon çağırılır ve hesaplamadan yararlanır.
Bir fonksiyon bir ad ve argümanlarla birlikte tanımlanır. Argümanlar alınacak değerleri tanımlayan değişkenlerdir.
Function adi (argument1,argument2, .. )
{ deyimler; }
Nadiren bir fonksiyon bir argüman değeri almaz. Bu durumda fonksiyonlar boş parantezlerle tanımlanır.
Yapısı:
Function islemyap()
...
End Function
Örnek:
function usal(x,y)
{ toplam=1;
for (j=0; j<y; j++)
{ toplam*=x; }
return toplam; //x değeri y kuvvetinde üssü alınır.
}
Örnek:
function formac(form)
{
var pencereozellikleri = "height=400,width=600,********=no,"
+ "scrollbars=no,menubars=no,toolbars=no,resizable=y es";
var URL = form.adres.options[form.adres.selectedIndex].value;
popup = window.open(URL,"MenuPopup",pencereozellikleri);
}
</script>
Örnek:
<SCRIPT>
function hello(msg) {
document.write(msg, "<br>");
}
var message = "Merhaba!";
hello(message);
</SCRIPT>
A. FORM ALANLARININ DOĞRULANMASINDA FONKSİYON KULLANIMI (FORM VALİDATİON)
Bir HTML formu üzerinden girilen alanların denetiminin yapılması (boş mu ya da istenilen türde bir sayı mı), uygulamada çok kullanılan bir kullanımdır:
Örnek:
<form action="giris.asp" method="post"
onsubmit="return checkform(this);">
<input type="text" name="e-mail">
<SCRIPT LANGUAGE="JavaScript">
<!--
function checkform ( form )
{
// alan kontrolü
if (form.email.value == "") {
alert( "lüften e mail bilginizi girin" );
form.email.focus();
return false ;
}
// blok sonu
return true ;
}
//-->
</SCRIPT>
III. UYGULAMA
HTML belgesinde alanların kontrolü için bir uygulama geliştirin:
<HTML>
<HEAD>
</HEAD>
<BODY>
<SCRIPT LANGUAGE="JavaScript">
<!--
function valid(form) {
var field = form.yasi;
var yasiniz= parseInt(field.value);
if (!yasiniz) {
alert("yasınızı girin.");
return false;
} else if (yasiniz>= 18) {
alert("bilgilerinizi için teşekkür ederiz.");
return true;
} else {
return false;
}
}
// -->
</SCRIPT>
<FORM name = bilgiformu onSubmit="return valid(this)">
Yaşınız :<BR><INPUT TYPE="text" NAME="yas" SIZE="2"><BR>
Adınız ve Soyadınız:<BR><INPUT TYPE="text" NAME="ad" SIZE="40"><BR>
Diger Bilgileriniz:<BR><TEXTAREA NAME="diger" COLS="40" ROWS="5"></TEXTAREA><BR>
<INPUT TYPE="submit" VALUE="gönder">
</FORM>
</BODY>
</HTML>
|