Flash Actionscript Variables

Berhubung kemaren ada yang menghubungi via email menanyakan tentang variable dalam flash actionscript ada baiknya saya jawab lewat posting saja biar bisa sharing dengan yang lain yang mungkin membutuhkan informasi yang sama.

Variable bisa diartikan sebagai unit penyimpanan sementara yang bisa dibuat, diakses, diubah, atau bahkan dihapus dari memory sepanjang proses eksekusi script. Variable memiliki 2 bagian utama yaitu Nama dan Nilai.

  • Nama variable bisa apa saja tetapi tetap harus memenuhi aturan tertentu diantaranya tidak boleh memiliki spasi dan tidak boleh memakai reserved word yaitu kata-kata yang telah digunakan oleh actionscript sebagai identifier. Selain itu nama variable haruslah unik dalam scope yang sama, Meskipun demikian sangat dianjurkan untuk memberi nama variable yang se-deskriptif mungkin untuk memudahkan debuging apalagi kalau aplikasi yang dikerjakan oleh lebih dari satu developer.
  • Nilai Variable nilai yang disimpan didalam variable bisa bertipe apa saja Number, String, Array, Object …

Contoh variable:

var myVar = 10;
var myVar2:Number = 10;
myVar3 = “foo”
myVar3 = new String(“string variable”);

pada contoh diatas deklarasi variable bisa langsung dengan mendeklarasikan tipe data (Data Type) dari nilai yang akan disimpan ke dalam variable bersangkutan. Keuntungan dari deklarasi seperti ini adalah bahwa actionscript dapat langsung mengenali tipe data dari variable tersebut dan akan memberikan hint(tooltips) dari property atau fungsi-fungsi yang dimiliki tipe data tersebut. contoh:

myVar = new String(“string variable”);
myvar2 = myVar.toLowerCase;
myVar3 = myVar.substr(8);

Flash Actionscript Scope Variables

Scope Variable adalah batasan lingkungan dimana variable yang sudah dideklarasikan bisa dikenali. Flash Actionscript mengenal 3 variable scope al:

  • Local variable adalah variable yang dideklarasikan didalam suatu fungsi atau didalam looping proses, maka variable tersebut hanya akan dikenali didalam fungsi atau loop dimana dia dideklarasikan. Variable lokal akan otomatis terhapus setelah fungsi selesai diseksekusi. contoh:
    function hitung(){
        var x = 0;
        trace(x);
    }
    trace(x);
  • Global variable adalah variable yang dikenali secara global. Variable global ini bisa dipanggil dari bagian manapun didalam scope aplikasi. untuk mendeklarasikan variable global dengan memberikan awalan “_global.” pada deklarasi variable. COntoh:
    _global.myVar = “Global Variable”;
  • Timeline variable adalah variable yang tersedia hanya di spesifik frame dimana variable itu dibuat. Untuk membuat variable Timeline kita hanya perlu menginisiasi variable didalam sebuah frame

Jika ada sebuah variable dengan nama yang sama didalam scope yang sama maka yang dipakai adalah variable yang disebutkan terkahir dan jika ada global variable yang memiliki nama yang sama dengan lokal variable maka yang dipake adalah lokal variable dalam scope dimana variable itu dipanggil.

11 Responses to “Flash Actionscript Variables”


  1. 1 obiez

    thanxzzzzz…..berat…..kang….
    maju terus bwat smw master flash n para newbie-nya…..

  2. 2 ariel

    M E R D E K A hihihiii …

  3. 3 rizky

    saya puny masalah dengan variable scope tapi gak bisa mecahin. Gini, saya bikin photo gallery isinya 660 foto. Scriptnya:

    this.createEmptyMovieClip(”photo”,this.getNextHighestDepth());
    pathToPics = “data/images/”;
    this.fadeSpeed = 7;
    var xyx = 1;
    picArray = [];
    for (i=0; ithis.fadeSpeed) {
    this.photo._alpha -= this.fadeSpeed;
    } else {
    this.loadPhoto();
    }
    };
    MovieClip.prototype.loadPhoto = function() {
    var p = _root.photo;
    p._alpha = 0;
    p.loadMovie(this.pathToPics this.picArray[this.xyx]);
    this.onEnterFrame = loadMeter;
    };
    MovieClip.prototype.loadMeter = function() {
    var i, l, t;
    l = this.photo.getBytesLoaded();
    t = this.photo.getBytesTotal();
    if (t>0 && t == l) {
    this.onEnterFrame = fadeIn;
    } else {
    trace(l/t);
    }
    };
    MovieClip.prototype.fadeIn = function() {
    if (this.photo._alpha

  4. 4 rizky

    Wah, ada batasan karakter yak? Ya udah deh, langsung ke intinya:

    var my_ti:mx.controls.TextInput;
    my_ti.maxChars = 3;
    my_ti.restrict = “0-9″;
    var tiListener:Object = new Object();
    tiListener.handleEvent = function(evt_obj:Object) {
    if (evt_obj.type == “enter”) {
    var myNum:Number = Number(my_ti.text);
    var xyx = myNum;
    photo.loadMovie(pathToPics picArray[xyx]);
    trace(myNum);
    trace(xyx);
    }
    };
    my_ti.addEventListener(”enter”,tiListener);

    misalnya orang masukin 88 di inputdata, di OUTPUT messagebox keluar 88, 88. Artinya nilai xyx udah bener 88 kan? Nah, tapi kenapa kalau gue teken tombol ke kanan atau ke kiri masih aja ngeyel ngelanjutin nilai array yang lama? Misalnya sebelum gue masukin 88 gue ada di foto 55, ya pas kita teken tombol kiri atau kanan, fotonya jadi foto 54 atau 56… Mana sih yang belum gw tulis???

  5. 5 ariel

    mana key event untuk tombol kiri/kanan ? :) he eh mending ke email ja kirim fla-nya biar aku coba skalian test

  6. 6 naufalarik

    Langsung aja ya mas.
    Saya lagi bikin skripsi tentang virtual classroom aritmatika sempoa, tapi sampai sekarang saya masih bingung cara bikin action scriptnya. Bagaimana sih cara mengontrol pergerakan manik2 pada sempoa yg ditampilkan dlm bentuk animasi melalui input text. Saya sdh coba fungsi if, tapi hasilnya tdk sesuai dg harapan, hasilnya tdk bisa mengenali angka2 masukannya. Contoh action script yg sy bikin tp tdk berhasil;

    on (release) {
    if (input1=1);
    manik1._y=135;
    if (input1=2);
    manik2._y=150;
    if (input1=3);
    manik3._y=163;
    if (input1=4);
    manik4._y=176;
    }

    Begitu dipublish hasil saat penekanan button, keempat manik tsb naik bersamaan dan pada input text 1 tertulis angka 4. Tolong dong bagaimana cara bikin action scriptnya supaya masing2 input text dikenali oleh pergerakan manik-manik.
    Sebelumnya saya sangat berterima kasih.

  7. 7 ironman

    morning kang
    saya sedang bikin thumbnail scroller (dengan berhasil), thumbnail di buat dengan cara memasukan perintah loadMovie, kemudian saya buat skala dengan men-set property _xscale dan _yscale kira2 gini kodenya:

    loadMovie(”baju1.jpg”,this.main.thumb01);
    this.main.thumb01._xscale=29;
    this.main.thumb01._yscale=25;
    loadMovie(”baju2.jpg”,this.main.thumb02);
    this.main.thumb02._xscale=29;
    this.main.thumb02._yscale=25;
    loadMovie(”baju3.jpg”,this.main.thumb03);
    this.main.thumb03._xscale=29;
    this.main.thumb03._yscale=25;
    ………
    loadMovie(”baju36.jpg”,this.main.thumb36);
    this.main.thumb36._xscale=29;
    this.main.thumb36._yscale=25;

    nah saya pengen coba dengan cara ringkas

    for (i=1; i

  8. 8 arieditya

    numpang jawab buat mas naufalarik, setau saya penulisan kondisi untuk action script itu pakainya ” == ” bukan ” = ” (lebih condong ke C bukan ke VB)
    kalo ” = ” itu akan memasukan nilai ke variable…

    jadinya script diatas nilainya akan TRUE terus karena nilai “input1″ adalah selalu TRUE (saya lupa, nilai desimal untuk FALSE di Actionscript itu 0 atau -1… nilai positif lainnya adalah TRUE)

    kalau dibagian akhir statement dari tiap if ada statement:
    “trace(input1);”
    maka akan terlihat kalau nilai input1 akan berubah terus dari 1, 2, 3 and akhirnya 4…

    next: buat mas ironman (weleh.. manusia besi or manusia setrikaan?)
    kenapa ga coba pakai Array aja??
    khan lebih gampangan…
    coba cek kesini:
    http://www.adobe.com/support/flash/action_scripts/actionscript_dictionary/actionscript_dictionary026.html

    well, kira2 gitu deh… moga2 bermanfaat and ada gunanya… =))
    kalo salah, kasih tau saya yaa.. lewat imel aja ke:
    andrewmalachel[at]yahoo[dot]com

  9. 9 si budi

    makasih penjelasan ttg variable global nya..

  10. 10 didin

    halo mas, mau tanya gimana caranya bikin object supaya on top terus…

    matur suwun :)

  11. 11 Lunar Filth

    oOoh,..

    Thx mas,..

    Baru ngeh ini toh yang nama`a Variable,hohoho :D

Leave a Reply