Bu bölümde değişkenler(Variable) ve veri tipleri(Value), stringler ve ifadeler(Expression),harici değişkenlerin yüklenmesi, değişkenleri bitiştirmek ve değişkenleri koşullu deyimlerle(İf, Else vs.) kullanma konularından bahsedilecektir.
Değişkenler bir bilgi içerir ve bu bilgi daha sonra kullanılan komutlarla değerlendirilirler. Bir değişken içine ilk kez bir bilgi koyma işlemine initialization(başlatma) adı verilir. Değişkenlere değer eklemenin yolu setVariable komutunu kullanmaktır. Atanacak değerlere veri tipleri adı verilir,genel olarak 4 başlık altında incelenir:
1- Sayı: Sayısal bir değerdir. degisken1=30 gibi.
2- String: Karakter, sayı ve semboller topluluğudur. degisken2="http://lazoid1.virtualave.net/lazoid" gibi. Stringler daima çift tırnak işaretleri arasında bulunur.
3- Boolean: True ve False veya 1 ve 0 şeklinde ifade edilirler. Koşullu deyimlerle sık kullanılırlar.
4- Nesne(Obje): Bir konstrüktör fonksiyonundan yaratılırlar. yeniRenk=newColor() yeniSes=newSound() gibi
Lokal bir değişken kullanmak istiyorsanız var ifadesini kullanmalısınız.Örneğin:
var degisken=20; Bu değişkenler kullanıldığı kod grubundan sonra silinirler.Yani bir kez kod grubunda kullanabilirsiniz.
Önemli kurallar:
1- Matematiksel ifadelerde bölme ve çarpma işlemleri daima çıkartma ve toplama işleminden önce yapılır.
4+2*8=20 dir. Önce değerlendirilmesini istediğiniz işlemler varsa parantez içine alın. (4+2)*8=48 sonucu elde edilir.
2- Diğer bir konu webde sık rastlayacağınız değer atamalarıdır. Burada kısaltmalar kullanılabilir. Örnek:
x=x+1 ile x++
x=x-1 ile x--
x+=5 ile x=x+5
x-=5 ile x=x-5
x/=5 ile x=x/5
x*=5 ile x=x*5 çiftleri aynı şeyi ifade eder.
3- Değişken ismi olarak scriptte kullanılan komut adlarını yazarsanız flash`ın kafası karışır ve hatalı sonuçlar verebilir. Şu kelimeleri kullanmayın:
break, contineu, function, return, delete, if, this, while, in, else, true, false, var, void,for......Mümkün olduğu kadar yapmak istediğinizi açıklayacak kelimeleri ASCII formatında olmak kaydı ile kullanın. yeniSes, yeniRenk gibi.
4- Bu madde oldukça önemlidir. Lütfen dikkatle okuyun. Bir değişkeni başlattığınızda belirli bir timeline`a sahip olurlar. Buna değişkenin kapsamı(scope) denilir. Şöyle bir benzetme yapalım. Değişkenlerin kapsamı onların evi gibidir. Evin dışına çıkamazlar. Yani değişkeni ana sahnenin timeline`ında başlatırsanız kapsamı ana sahne olur, bir film klibinde başlatılırsa kapsamı film klibi timeline`ı olur. Bu bölümler dışına çıkamadıklarından içerdikleri bilgiyi kullanmak için değişkenin hedef yolunu göstermeniz gerekir. Bu aynı film klibinin yolunugöstermedeki gibidir ve _root, _this, _parent terimlerini kullanmanızı gerektirir.
Ana sahneye yerleştirilmiş resim örnek isimli film klibi içinde degisken1 adıyla atanan bir değişkenimiz olduğunu varsayalım. Bu değişkendeki bilgiyi kullanmak için _root.resim.degisken1 ifadesini kullanmalıyız. Şayet değişken ana sahneye atanmışsa verilecek komut _root.degisken1 şeklinde olmalıdır.
5- Şayet hedef yol kullanmadan her alanda geçerli bir değişken kullanmak isterseniz _global ifadesine başvurmalısınız.Örneğin ana sahneye:
_global.deger=5;
yazmışsanız ister başka bir klip isterseniz başka bir sahne olsun _global.deger yazarak o değişkene ulaşabilirsiniz.Yani değişkeniniz evrensel bir konum alır ve her alandan sadece ismini yazarak ulaşma şansına sahip olabilirsiniz.Bu kod sadece Flash-MX ve Flash MX 2004 versiyonlarında kullanılabilir.