设为首页 加入收藏 网站搜索 繁體中文 中国建站网 — 站长资源平台

AS.5在脚本中控制流向

来源136z.Com 作者:佚名 时间:2005-6-17 23:45:47 该文得分0

ActionScript使用if、for、while、do...while和for...in动作,依据某个条件是否存在执行某个动作。



一、使用“if”语句

  检查一个条件是真或假(true或false)的语句以if开头。如果条件存在,ActionScript执行接下来的语句。如果条件不存在,ActionScript跳转到本代码块以外的下一语句。

  要优化你的代码的性能,首先检查最有可能存在的条件。

  下面的语句测试几个条件。elseif指定如果前面的条件是假(false)时可选的测试。

if((password==null)||(email==null)){
gotoAndStop("reject");
}else{
gotoAndPlay("startMovie");
}

二、重复执行动作

  ActionScript可以重复执行动作,可以按指定次数重复执行,或指定条件存在时重复执行。在ActionScript中,使用while、do...while、for和for...in动作创建循环。

1.当条件存在时重复执行动作

  使用while语句实现。while循环先计算一个表达式,当表达式的值为真(true)时,执行循环体中的代码。在循环体中的每个语句被执行后,再次计算表达式。在下面的例子中,循环执行4次:

i=4
while(i$#@62;0){
myMC.duplicateMovieClip("newMC"+i,i);
i--;
}

  也可以使用do...while语句创建与while循环同类的循环。在do...while循环中,表达式的计算在代码块底部进行,因而该种循环至少运行一次,如下所示:

i=4
do{
myMC.duplicateMovieClip("newMC"+i,i);
i--;
}while(i$#@62;0);

2.使用内建计数器重复执行动作

  使用for语句实现。大多数循环使用某种计数器控制循环运行的次数。可以先声明一个变量,然后写一个语句,在每次执行循环之后增加或减少该变量的值。在for动作中,计数器和增加计数器的语句是该动作的组成部分,如下所示:

for(i=4;i$#@62;0;i--){
myMC.duplicateMovieClip("newMC"+i,i+10);
}

3.要循环处理电影剪辑或对象的子项

  使用for..in语句实现。子项包括其它电影剪辑、函数、对象和变量。下面的例子使用trace动作在输出窗口打印循环处理的结果:

myObject={name:’Joe’,age:25,city:’SanFrancisco’};
for(propertyNameinmyObject){
trace("myObjecthastheproperty:"+propertyName+",withthevalue:"+myObject
[propertyName]);
}

这个例子在输出窗口中输出如下结果:
myObjecthastheproperty:name,withthevalue:Joe
myObjecthastheproperty:age,withthevalue:25
myObjecthastheproperty:city,withthevalue:SanFrancisco
  如果希望脚本可以重复处理特定类型的子项,如仅处理电影剪辑子项。可以使用for...in语句和typeof操作符。

for(nameinmyMovieClip){
if(typeof(myMovieClip[name])=="movieclip"){
trace("Ihaveamovieclipchildnamed"+name);
}
}

  注:for..in语句重复处理对象原型链中的对象属性。如果子对象的原型是parent,for..in也将重复处理parent的属性。

相关文章
广告赞助
网友评论

共有 0 位网友发表了评论,平均得分: 0 查看完整内容

用户名:

分 值:100分 85分 70分 55分 40分 25分 10分 0分

内 容:

(注“”为必填内容。) 验证码: 验证码,看不清楚?请点击刷新验证码