主题:  for...in

水月刀

职务:普通成员
等级:1
金币:0.0
发贴:133
#12001/5/23 20:39:01
有什么实用价值呢?



5D宽带&流技术版主

职务:版主
等级:4
金币:10.0
发贴:1874
#22001/5/23 21:15:34
帮助文件上好像有这个的详细的说明,
你可以看看.



探险队

职务:普通成员
等级:1
金币:0.0
发贴:41
#32001/5/24 10:25:13
我也不理解这个帮助看不懂
有没有谁说说呀



Blackflash.Qi

职务:版主
等级:7
金币:17.0
发贴:6028
#42001/5/24 15:54:55
for .. in 列举物件(Object)中的子体(Child)



水月刀

职务:普通成员
等级:1
金币:0.0
发贴:133
#52001/5/24 20:48:34
for (propertyname in object){
......
}

object是定义的对象,那propertyname是什么?



5D荣誉斑竹

职务:普通成员
等级:2
金币:10.0
发贴:585
#62001/5/24 23:33:05
for..in

语法

for(variableiterant in object){
statement;
}
参数

variableiterant 重复操作的变量名, 可以是对象的任一属性或数组的任一元素.

object 被重复的对象名.

statement 每次重复均要执行的语句.

描述

动作; 通过对象属性或数组元素循环, 对对象的每一属性执行statement语句.

一些属性不能被for 或for..in动作列举. 例如,Array对象的built-in 方法 (Array.sort and Array.reverse)就不能包含在列表中, 电影夹属性, 比如 _x 和 _y,也不能被列举.

for...in结构循环在重复对象原型链上的对象属性. 如果子体的原型是父体,用for...in循环子体属性也将循环父体属性.

播放器

Flash 5 或更高.

例子

下面是用 for..in 循环对象属性的例子:

myObject = { name:'Tara', age:27, city:'San Francisco' };
for (name in myObject) {
    trace ("myObject." + name + " = " + myObject[name]);
}
此例输出如下:

myObject.name = Tara
myObject.age = 27
myObject.city = San Francisco
下面是一使用 typeof 运算符和 for..in 重复子体详细类型的例子:

for (name in myMovieClip) {
    if (typeof (myMovieClip[name]) = "movieclip") {
        trace ("I have a movie clip child named " + name);
    }
}
下面的例子列举电影夹中的子体并发送它们到各自时间线上的第2帧. 电影夹 RadioButtonGroup 是父体,并带有几个子体, _RedRadioButton_, _GreenRadioButton_ and _BlueRadioButton.

for (var name in RadioButtonGroup) {
    RadioButtonGroup[name].gotoAndStop(2);
}