跳到主要內容

ActionScript3.0 一些觀念

1.實值型 & 引用型 的區別:
簡單來說 實值型的就是一般資料型態直接定義他值或變數的型態
var a:int;
var b:int = 2;
var c:int = b;
以上都是實值型的。
var d:Array = new Array();
這種就是引用型。
實值型無法改變她原先的值,然而引用型的就可以。

2.使用const宣告常數
在程式裡面程式設計師再做數學運算,可能會有一些變數不想讓他改變,讓他構成一個常數。我們就可以用const來宣告他。

const foo:Array = new Array(1,2);
var a:Array = foo;
a[0] = 100;
trace(a);
//foo = [100,2];不合法的
3.基礎資料型別 & 複雜資料型別
基礎資料型別:boolean , int , number , string ....
複雜資料型別:array , object...

4.關於陣列
在ActionScript3.0中,陣列裡面放的東西沒有型別限制,然而Java和C#則有這方面限制,要放相同資料型態的東西。

5.Object(物件)
Object的成員有兩種:一種是屬性(Property),用來存放各種資料,一種是方法(Method),存放函數物件。
var foo:Object = {name:"abc", web:"www.abc"};
trace(foo.name); //abc

var bar:Object = {
hello:function(){
trace("Hello");
},ok:function():String
{return "Ok";}
};

bar.hello();//Hello
trace(bar.ok());//Ok
動態添加屬性
var egg:Object = {};
egg.name = "土蛋";
egg.age = 26;
trace(egg.age);//26

6.不同變數在Flash中會有不同的變數預設值
var a:int, b:uint, c:Number;
var d:String, e:Boolean;
var f:Array;
var g:Object;
var h;
var i:*;
trace(a,b,c,d,e,f,g,h,i);
//int類型預設值:0;uint類型預設值:0;Number類型預設值:NaN;String類型預設值:null;
//Boolean類型預設值:false;Array類型預設值:null;Object類型預設值:null;
//為宣告類型類型預設值:undefined;為宣告類型類型預設值:undefined;

留言