İnternet Programlama-I
JAVASCRİPT
-İŞLEVLER-
İşlev Nedir?
Diğer programlama dillerinde olduğu gibi, Javascript’
de işlev yada başka bir deyişle fonksiyon adı verilen
olanaklara sıkça başvurmaktadır. İşlev, belli bir amaca
yönelik bir program parçacığıdır. En önemli avantajı,
aynı kodların farklı programlarda defalarca
kullanılabilmesini sağlamasıdır. Örneğin, bir web
sayfasına veri girişlerinin yapıldığını varsayalım.
Alanların sayısal olmasını denetlemek istersek her
alan için bu denetleme kodlarını yazmaya gerek
yoktur. İşlev olarak bir kere yazılır ve her gerektiğinde
bu işlev çağrılarak kullanılır.
İşlevlerin Tanımlanması
Javascript işlevleri belirli bir yapıda tanımlanır.
İşlevleri belirlemek için function deyiminden
yararlanılır.
function adı ([parametreler]) {
deyimler
}
İşlevlerin Tanımlanması
Her işlevim mutlaka bir ismi olmalıdır. Aksi
taktirde, çağrılması söz konusu olamaz. İşlev
isimleri alfa sayısal karakterlerden oluşabilir.
Özel işaretlerden sadece ( _ ) işaretine izin
verilir. İşlev isimleri alfabetik karakterle
başlamalıdır. Sayısal karakter işlev isminin ilk
karakteri olamaz. Aynı isimle iki işlev olamaz!!!
İşlev isimleri büyük küçük harf ayrımına
duyarlıdır. AnaHesap ve anahesap farklı iki
işlev adıdır.
İşlevlerin Tanımlanması
İşlevler çalıştırıldığında, herhangi bir değer elde
etmeden sadece belirli bir işlemi yerine getirebilir.
Örneğin, bir mesajın yazdırılması için bir işlev
tanımlanabilir. Bu işlevin, kendisinin çağrıldığı yere
her hangi bir sonuç göndermesi, bir başka deyişle
döndürmesi gerekmeyebilir. Bazı işlevler ise,
çağrıldığı yere bir değer döndürür. Böyle durumlarda
return deyimi ile birlikte kullanılır.
return ifade
İşlevlerin Tanımlanması
<script language="javascript">
function merhaba ( ){
alert ("Merhaba LMYO!");
}
merhaba( );
</script>
HTML içinde İşlev Çalıştırma
Bir işlevi Javascript programı içinde tanımlayıp
çalıştırabildiğimiz gibi HTML kodları içinde çağrılarak
çalıştırılması da mümkündür. Ancak bunun için bir
olayın belirlenmiş olması gerekmektedir. Örneğin
pencere üzerinde yer alan bir düğmenin tıklatılması
durumunda bir işlevin çalışması sağlanabilir. Bunun
için HTML kodları içinde tanım yapılmalıdır.
<INPUT TYPE=“button”
onClick= “işlev adı”>
Value=“Düğme
Başlığı”
HTML içinde İşlev Çalıştırma
<html>
<head>
<script language="javascript">
function merhaba ( ){
alert ("Merhaba LMYO!");}
</script>
</head>
<body>
<form>
<input type="button" Value="Tıklayın"
onclick="merhaba( )" >
</form>
</body>
</html>
İşlevlere Bir Değer Geçirme
Şu ana kadar gördüğümüz işlevler bir parametre
içermemekteydiler. Yani işlev çalışır çalışmaz bir eylem
yerine getirilmekte, çağrıldığı konuma herhangi bir
değer geri dönmemektedir. Bir işleve herhangi bir
değerin gönderilmesi ve işlev içinde bir takım işlemler
yerine getirildikten sonra çağrıldığı konuma bir başka
değer üreterek geri dönmesi isteniyorsa parametre
geçirilmesi olayından söz etmek gerekecektir.
İşlevlere Bir Değer Geçirme
<html>
<head>
<script language="javascript">
function merhaba(mesaj) {
alert (mesaj);}
</script>
</head>
<body>
<form>
<input type="button" Value="Tıklayın" onclick="merhaba('merhaba
Türkiye!')" >
</form> </body> </html>
İşlevlere Bir Değer Geçirme
<html>
<head>
<script language="javascript">
function hesapla(a,b) {
alert (a+b);}
</script>
</head>
<body>
Hesaplama yapmak için butona tıklayınız…
<form>
<input type="button" Value="Tıklayın" onclick=“hesapla(5,7)" >
</form> </body> </html>
İşlevden Bir Değer Döndürme
Bir işlev çalıştırıldığında, işlevden elde edilen sonucun
bu işlevin yer aldığı konuma aktarılması söz konusu ise,
biraz daha farklı bir yol izlenecektir. İşlev içinde return ()
deyimi yerleştirilerek, işlev içinde elde edilen sonuçlar
işlev dışına aktarılabilir.
İşlevden Bir Değer Döndürme
<script language="javascript">
a=3;b=-2;c=5;
var sonuc= hesapla(a,b,c);
document.write ("a:" +a+ "<br>");
document.write ("b:"+b+ "<br>");
document.write ("c:" +c+ "<br>");
document.write ("discriminant: " + sonuc);
function hesapla(a,b,c)
{
var kok=(b^2-4*a*c)/2*a
return (kok);
}
</script>
İşlevden Bir Değer Döndürme
Program içinde topla ve cikar adında iki fonksiyon oluşturup
program içinde aldığı parametrelere göre değerleri hesaplayıp
ekrana gösteren programı yazınız…
İşlevden Bir Değer Döndürme
<script language="javascript">
function topla(sayi1, sayi2){
var sonuc = sayi1+sayi2;
document.write("toplama sonucu: "+sonuc);
} function cıkar(sayi1, sayi2){
var sonuc = sayi1-sayi2;
document.write(" Çıkarma sonucu:"+sonuc);
} var a = 7;
var b = 3;
topla(a,b);
cıkar(a,b);
</script>
Yeni Nesnelerin Yaratılması
Javascript nesnelere dayalı bir programlama dili kabul
edilir. Her şey bir nesne olarak değerlendirilir. Örneğin,
tarayıcı bir nesnedir. Ayrıca pencereler, bağlantılar (link),
formlar, diziler vb gibi bileşenler birer nesnedir. Bu
nesneleri Javascript hazır olarak kullanıcıya sunar. Ancak
kullanıcı kendi gereksinimlerine göre kendi nesnelerini
yaratabilir. Daha da ileri giderek, bu nesnelere ilişkin
özellikleri ve yöntemleri de tanımlayabilir.
Kullanıcı Nesneleri
Kullanıcılar (yani Javascript programcıları) kendi
nesnelerini yaratabilmek için belirli bir yol izlemek
durumundadır. Bunun için,
 Bir işlev tanımlanır
 New terimi yardımıyla işlev bir nesne olarak tanımlanır.
Nesne adı = new işlev adı ()
biçiminde bir tanım yapılır.
Kullanıcı Nesneleri
Örneğin müşteri isimli bir nesne yaratmak istiyoruz.
Bunun için aşağıda belirtildiği biçimde bir tanım yapmak
yeterlidir:
musteri = new nesne_işlev();
function nesne_işlev() {
}
Birinci satırda nesne yaratılmakta, diğer satırda ise bu
nesneye ilişkin işlev tanımlanmaktadır. Eğer nesneye ait
özelliklerin tanımlanması söz konusu olsaydı bu işlev
içine kaydedilecekti. Ancak bu işlevin, herhangi bir işleve
yer vermeden,
Kullanıcı Nesneleri
müşteri = new Object();
biçiminde de yaratılabilir. Bir işleve bağlı olarak, birden
fazla işlev tanımlanabilir. Örneğin, musteri yanı sıra,
personel, ogrenci gibi nesnelerin yaratılması söz konusu
ise aşağıda gösterildiği biçimde bir tanım yapılabilir.
musteri = new nesne_işlev();
personel = new nesne_işlev();
ogrenci = new nesne_işlev();
function nesne_işlev() {
}
Nesne Özelliklerinin Tanımlanması
Bir nesne tanımlandıktan sonra, doğal olarak ona bazı
özelliklerin kazandırılması söz konusu olabilir. Bunun
için, nesne özelliklerinin belirlenmesi ve bu özelliklere
değerlerin aktarılması gerekecektir. Nesne özellikleri,
nesneyi tanımlayan işlev içinde tanımlanır. Söz konusu
nesne özellikleri,
Nesne.özellik = değer;
Nesne
Program içinde yaratılacak yeni nesnenin adı
özellik
Nesnenin özellikleri değer Özelliğin değeri
biçiminde tanımlanır.
Nesne Özelliklerinin Tanımlanması
İşlev içinde nesne adı doğrudan tanımlanabileceği gibi,
nesne adı yerine This terimi kullanılabilir.
This.özellik = değer:
Nesne özelliklerinin işlev içinde tanımlanması gibi bir
koşul yoktur. Gerek görülüyorsa, işlev dışında da
özellikler tanımlanabilir ve değerler atanabilir.
Nesne Özelliklerinin Tanımlanması
<SCRIPT LANGUAGE="Javascript">
musteri=new musteri_islev( );
// Nesne işlevi ve özellikleri tanımlanıyor...
function musteri_islev() {
this.adi = " Onur "
this.soyadi = " Bulut "
this.dogum_yili = " 1982 "
}
// Nesne özellikleri listeleniyor..
for (ozellik in musteri)
document.write(ozellik + "<br>");
</SCRIPT>
Nesne Özelliklerinin Tanımlanması
Yukarıdaki örnek programı, başka biçimde de
düzenleyebiliriz. Özellikleri işlev içinde tanımlamıştık.
Bunun yerine, işlev dışında tanımlayarak da
kullanabiliriz. Program çalıştırıldığında sonuç olarak aynı
değerleri elde edeceğiz.
Nesne Özelliklerinin Tanımlanması
<SCRIPT LANGUAGE="Javascript">
musteri=new musteri_islev( );
// Nesne işlevi ve özellikleri tanımlanıyor...
musteri.adi = " Onur "
musteri.soyadi = " Bulut "
musteri.dogum_yili = " 1982 "
function musteri_islev(){
}
// Nesne özellikleri listeleniyor..
for (ozellik in musteri)
document.write(ozellik + "<br>");
</SCRIPT>
Yeni Yöntemlerin Yaratılması
Javascript işlevlerinin bir diğer kullanılma yeri olarak
kullanıcı tanımlı yöntemleri gösterebiliriz. Javascript
nesneleriyle ilgili yöntemler doğrudan doğruya
kullanılabilir. Ancak var olan yöntemler dışında, kullanıcı
tanımlı yöntemleri kullanabilmek için, işlevler yardımıyla
tanımlanması gerekecektir.
Örneğin yeni bir nesne yaratacağız. Bu nesnenin adı
ogrenci olsun. Bu nesneye ilişkin olarak, ogrenciliste()
isimli bir yöntem oluşturacağız. Bu yöntem, nesnenin
özelliklerini tarayıcıda listeleyecektir.
Yeni Yöntemlerin Yaratılması
<SCRIPT LANGUAGE="Javascript">
ogrenci=new yeniogrenci("Hasan" , "1453" , "9-A");
ogrenci.ogrenciliste ( );
function ogrenciliste( ){
liste= "Adı: " + this.adi + "<br>";
liste+= "Okul No: " + this.okul_no + "<br>";
liste+= "Sınıf : " + this.sinif + "<br>";
document.write (liste);}
function yeniogrenci (adi, okul_no, sinif){
this.adi = adi;
this.okul_no= okul_no;
this.sinif= sinif;
this.ogrenciliste = ogrenciliste;
}
</SCRIPT>
Download

3. hafta - Personel Web Sistemi