
การประกาศตัวแปร
หลังจากที่ได้เขียนบทความก่อนหน้าไปให้ดูบ้างแล้ว ตอนนี้จะมาปูพื้นฐานเกี่ยวกับการประกาศตัวแปรของ ActionScript 3.0 ซึ่งเป็นพื้นฐานการเขียนสคริปต์ดำเนินงานกับชิ้นงาน Flash ก่อนอื่นก็ให้ศึกษาตัวอย่างนี้ก่อน ActionScript 3.0 : เริ่มต้นเขียนโปรแกรมแบบง่ายๆ ว่าเราจะทำอย่างไรจึงจะโค้ดลงใน Flash ได้
ตัวแปร คือ สิ่งที่ใช้เก็บค่าในทางคอมพิวเตอร์เพื่อใช้ในประมวลผลคำสั่ง หลังจากประกาศตัวแปรแล้วพื้นที่หน่วยความจำของคอมพิวเตอร์จะถูกจอง เพื่อรอการเก็บค่า ลองเปิดหน้าต่าง Actions ของโปรแกรม Flash CS 6 ขึ้นมาเพื่อทำตามคำอธิบายประกอบไปด้วยจะดีมาก
การประกาศตัวแปร
var i;
อธิบาย : โค้ดข้างต้นเป็นการบอกกับโปรแกรม Flash ว่าเราได้สร้างตัวแปร i ชนิด integer ขึ้นมา
ลองพิมพ์โค้ดต่อไปนี้ลงไปในหน้าต่าง Actions
i; // error if i was not previously defined
จะพบว่ามี Error เกิดขึ้นในแท็บ Output เพราะเราไม่ได้ใส่ var ไว้นำหน้าตามรูปแบบการประกาศตัวแปร
การกำหนดค่าให้กับตัวแปร
var i:int;
i = 20;
trace("value : " + i);
เมื่อพิมพ์เสร็จแล้วลองกด Ctrl + Enter เพื่อรันโปรแกรม Flash
อธิบาย : กำหนดค่า 20 ให้กับตัวแปร i
เราสามารถประกาศตัวแปรอีกรูปแบบหนึ่งได้อีกตามโค้ดด้านล่าง
var i:int = 20;
ให้ผลเหมือนกัน
ขอบเขตของตัวแปร
var strGlobal:String = "Global";
function scopeTest()
{
trace(strGlobal); // Global
}
scopeTest();
trace(strGlobal); // Global
อธิบาย : ตัวแปร strGlobal ถูกประกาศอยู่ด้านนอกสุดไม่ได้อยู่ในเครื่องหมายบล็อค { } ใดๆ ซึ่งเป็นตัวแปรแบบ Global ทำให้ฟังก์ชั่น scopeTest ซึ่งมีเครื่องหมายบล็อค { } เรียกใช้งานตัวแปร strGlobal ได้ด้วย ส่วน trace(strGlobal); บรรทัดล่างสุดเป็นการเรียกใช้งานตัวแปร strGlobal จากพื้นที่ Global ด้วยกัน
ทดลองรันโค้ดต่อไปนี้
function localScope()
{
var strLocal:String = "local";
}
localScope();
trace(strLocal); // error because strLocal is not defined globally
จะพบว่ามี Error เกิดขึ้น เพราะตัวแปร strLocal ทำงานแค่ภายในขอบเขตเครื่องหมาย { } เท่านั้น เป็นตัวแปรแบบ Local
ลำดับการทำงานของตัวแปร
รันโค้ดต่อไปนี้
trace(num); // NaN
var num:Number = 10;
trace(num); // 10