-
26.
0degiskenlerden devam edelim. yukarda verdigim orneklere biraz aciklama getirmek istiyorum. yukaridaki orneklerde "var" kelimesini kullandik, bunun sebebi sudur. bir degiskenin degerini atamadan once olusturmamiz lazim. bunu da kullandigimiz dil javascript oldugu icin var ile yapiyoruz. daha sonra da ilk degerini veriyoruz. istersek once degiskeni olusturup sonra degerini de verebiliriz. acalim console u f12 ile;
var a;
a = "foo";
a;
gordugunuz gibi a nin degeri olusturulduktan sonra belirlendi. degiskeni var ile olusturmadan deger atarsak hata verir. bu var def vs gibi baska dillerde baska kelimeler ile olusturulabilir ama temel mantigi aynidir.
degiskenlerin degerini atarken mutlaka kendimiz belirlemek zorunda degiliz. bu degeri bilgisayara da hesaplatabiliriz ki ilerde genelde bu degerleri bilgisayar hesaplayacak. bu arada a ve b degiskenleri hala hafizada saklandigi icin, yeni isimler verelim. acalim f12 ile console lari:
var c = 3;
var d = c+1;
d;
c = c-1;
c;
d;
gordugunuz gibi d nin degeri 4 olarak belirlendi ve daha sonra yaptigimiz islemle c nin degeri 2 oldu. su onemli noktayi unutmayalim, d nin degerini atarken c yi kullandik, daha sonra c nin degerini degistirdik fakat d nin degeri degismedi. cunku degiskenin degeri atandigi anda hesaplandi. eger d nin degerinin her zaman c nin degerinden bir fazla olmasini istersek bunun icin degeri bir mantik tanimlayarak atamaliyiz. bu is icin de fonksiyonlari kullanmamiz gerekir. simdi ayni ornegi basit bir fonksiyonla yapicam, yarin da fonksiyonlar konusuna giricez. acalim simdi console u f12 ile:
var e = 5;
function yeniDeger(deger){
return deger+1;
}
var f = yeniDeger(e);
f;
e = e-1;
f;
e nin degeri basta 5 olarak atandi ama f nin degerini bir mantik belirleyerek atadik. dogal olarak f nin degerini her istedigimizde bilgisayar f nin degerini yeniden hesaplayacaktir. o yuzden f nin degeri once 6 e nin degeri 5 ken e nin degerini bir eksiltip f yi tekrar istedigimizde f nin degeri de bir eksilip 5 oldu. simdi bir sonraki bolumde fonksiyonlari anlaticam. simdi kullandigim function(deger) kismina kafa yormayin. hepsini anlaticam.
başlık yok! burası bom boş!