actionscript支持的for循環有三種形式:數組
1.for(初始值;條件;遞增)測試
例如:spa
for(var x:int=1;x<=10;x++) trace(x);
trace()會把結果輸出到日誌文件.日誌
2.for(屬性名 in 數組/對象)code
例如:對象
var myArray:Array = ["alpha","beta","chi"]; for(var i:String in myArray){ trace(i); }
循環是按照屬性名迭代,而數組的屬性名是數組的索引.因此輸出結果爲:blog
0索引
1ip
2it
能夠經過下面的方法取得值:
var myArray:Array = ["alpha","beta","chi"]; for(var i:String in myArray){ trace(myArray[i]); }
爲何變量i在這裏是String而不是int?由於for...in循環返回的是屬性名,而屬性名是String;
若是在for...in循環中使用int,大多數狀況下回出錯.
訪問對象與數組不一樣的是,對象直接包含屬性或特性,如:
var myObject:Object = {firstName:'Jeff',lastName:'Smith'}; for(var i:String in myObject){ trace("Property:"+i+"="+myObject[i]); }
輸出:
Property:firstName=Jeff
Property:lastName=Smith
3.for each(項 in 數組/對象)
for each...in循環用於迭代數組和對象,但測試的不是屬性名,而是屬性值
var myObject:Object = {firstName:'Jeff',lastName:'Smith'}; for each(var i:String in myObject){ trace(i); }
輸出:
Jeff
Smith