as3中for..in 语句和for each..in 语句
for..in 语句遍历对象的动态属性或数组中的元素,并对每个属性或元素执行
下例使用
statement
。对象属性不按任何特定的顺序保存,因此属性看似以随机的顺序出现。固定属性,例如在类中定义的变量和方法,不能由 for..in
语句来枚举。若要获得固定属性列表,请使用 flash.utils 包中的 describeType()
函数。下面的示例使用 for..in
遍历对象的属性:var myObject:Object = {firstName:"Tara", age:27, city:"San Francisco"};
for (var prop in myObject)
{
trace("myObject."+prop+" = "+myObject[prop]);
}
for each..in 语句遍历集合的项目,并对每个项目执行 for (var prop in myObject)
{
trace("myObject."+prop+" = "+myObject[prop]);
}
statement
。for each..in
语句作为 E4X 语言扩展的一部分引入,不仅可以用于 XML 对象,而且可以用于对象和数组。for each..in
语句仅遍历对象的动态属性,而不是固定属性。固定属性是指定义为类定义的一部分的属性。若要使用具有用户自定义类的实例的 for each..in
语句,则必须声明具有 dynamic
属性的类。 与 for..in
语句不同,for each..in
语句将遍历对象属性的值,而不是属性的名称。下例使用
for each..in
遍历对象的属性具有的值:var myObject:Object = {firstName:"Tara", age:27, city:"San Francisco"};
for each (var item in myObject)
{
trace(item);
}
for each (var item in myObject)
{
trace(item);
}
转自:http://www.cnblogs.com/8th/archive/2008/04/28/1174240.html