循环语句允许您使用一系列值或变量来反复执行一个特定的代码块。Adobe 建议您始终用大括号 ({}) 来括起代码块。尽管您可以在代码块中只包含一条语句时省略大括号,但是就像在介绍条件语言时所提到的那样,不建议您这样做,原因也相同:因为这会增加无意中将以后添加的语句从代码块中排除的可能性。如果您以后添加一条语句,并希望将它包括在代码块中,但是忘了加必要的大括号,则该语句将不会在循环过程中执行。
for
for 循环用于循环访问某个变量以获得特定范围的值。必须在 for 语句中提供 3 个表达式:一个设置了初始值的变量,一个用于确定循环何时结束的条件语句,以及一个在每次循环中都更改变量值的表达式。例如,下面的代码循环 5 次。变量 i 的值从 0 开始到 4 结束,输出结果是从 0 到 4 的 5 个数字,每个数字各占 1 行。
var i:int;
for (i = 0; i < 5; i++)
{
trace(i);
}
for..in
for..in 循环用于循环访问对象属性或数组元素。例如,可以使用 for..in 循环来循环访问通用对象的属性(不按任何特定的顺序来保存对象的属性,因此属性可能以看似随机的顺序出现):
var myObj:Object = {x:20, y:30};
for (var i:String in myObj)
{
trace(i + ": " + myObj[i]);
}
// 输出:
// x: 20
// y: 30
还可以循环访问数组中的元素:
var myArray:Array = ["one", "two", "three"];
for (var i:String in myArray)
{
trace(myArray[i]);
}
// 输出:
//one
//two
//three
如果对象是自定义类的一个实例,则除非该类是动态类,否则将无法循环访问该对象的属性。即便对于动态类的实例,也只能循环访问动态添加的属性。
for each..in
for each..in 循环用于循环访问集合中的项目,它可以是 XML 或 XMLList 对象中的标签、对象属性保存的值或数组元素。例如,如下面所摘录的代码所示,您可以使用 foreach..in 循环来循环访问通用对象的属性,但是与 for..in 循环不同的是,for each..in循环中的迭代变量包含属性所保存的值,而不包含属性的名称:
var myObj:Object = {x:20, y:30};
for each (var num in myObj)
{
trace(num);
}
// 输出:
// 20
// 30
您可以循环访问 XML 或 XMLList 对象,如下面的示例所示:
var myXML:XML =
<users>
<fname>Jane</fname>
<fname>Susan</fname>
<fname>John</fname>
</users>;
for each (var item in myXML.fname)
{
trace(item);
}
/* 输出
Jane
Susan
John
*/
还可以循环访问数组中的元素,如下面的示例所示:
var myArray:Array = ["one", "two", "three"];
for each (var item in myArray)
{
trace(item);
}
// 输出:
// one
// two
// three
如果对象是密封类的实例,则您将无法循环访问该对象的属性。即使对于动态类的实例,也无法循环访问任何固定属性(即,作为类定义的一部分定义的属性)。
while
while 循环与 if 语句相似,只要条件为 true,就会反复执行。例如,下面的代码与 for 循环示例生成的输出结果相同:
var i:int = 0;
while (i < 5)
{
trace(i);
i++;
}
使用 while 循环(而非 for 循环)的一个缺点是,编写的 while 循环中更容易出现无限循环。如果省略了用来递增计数器变量的表达式,则 for 循环示例代码将无法编译,而 while循环示例代码仍然能够编译。若没有用来递增 i 的表达式,循环将成为无限循环。
do..while
do..while 循环是一种 while 循环,它保证至少执行一次代码块,这是因为在执行代码块后才会检查条件。下面的代码显示了 do...while 循环的一个简单示例,即使条件不满足,该示例也会生成输出结果:
var i:int = 5;
do
{
trace(i);
i++;
} while (i < 5);
// 输出:5
分享到:
相关推荐
2. **基础语法**:ActionScript的基本语法包括变量声明、数据类型(如Number、String、Boolean等)、流程控制(如if语句、for循环、while循环)、函数定义与调用等。理解这些基础知识是编写ActionScript程序的基础。...
1. **基础语法**:ActionScript的基础包括变量声明、数据类型(如Number、String、Boolean、Object等)、运算符、流程控制(if语句、for循环、while循环)以及函数的使用。 2. **面向对象编程**:ActionScript 3.0...
* 学习 ActionScript 需要了解基本的编程概念,如变量、数据类型、循环、条件语句等 * 学习 ActionScript 需要了解 Flash 的基本操作,如添加键盘事件、按钮事件等 * 学习 ActionScript 需要了解 Flash 的高级操作,...
ActionScript支持标准的控制流语句,如if语句、switch语句、while循环、for循环等。这些语句允许开发者根据条件执行不同的代码路径或重复执行某段代码直到满足特定条件。 #### 五、函数与方法 函数是ActionScript...
【ActionScript 3.0详解】 ActionScript 3.0是一种强大的编程语言,主要用于实现Flex应用的业务逻辑和控制,与MXML一起构成了Flex应用程序开发的基础。ActionScript 3.0在Flash Player运行环境中执行,借助...
同时,讲解流程控制语句,如条件语句(if...else)和循环结构(for、while)。 2. **面向对象编程**:深入讲解ActionScript的面向对象特性,包括类的定义、继承、封装和多态。讲解如何创建自定义类以及如何使用内置...
在Flash ActionScript3(AS3)游戏开发中,循环播放动画是常见的需求,尤其是在创建动态效果或者游戏角色动作时。`gotoAndPlay`是ActionScript3中的一个关键命令,用于控制影片剪辑(MovieClip)从指定的帧或标签...
教程会从基础开始,介绍AS3.0的变量、数据类型、流程控制语句(如if语句和for循环)以及函数的使用。 其次,类和对象是AS3.0的核心概念,教程将详细解释如何定义类、创建对象并使用继承和多态性来设计可扩展的代码...
手册中对于AS2.0的部分会详细讲解其基础语法,包括变量、常量、数据类型、运算符、流程控制(如if语句和循环)、函数、对象和类的概念。此外,还会涉及事件处理、影片剪辑控制、时间轴控制等核心功能,以及如何使用...
1. **基础语法**:包括变量、数据类型(如字符串、数值、布尔值、null和undefined)、运算符、流程控制(条件语句、循环结构)以及函数的使用。 2. **面向对象编程**:ActionScript 3.0完全支持面向对象编程,包括...
3. 控制结构:包括条件语句(if/else)、循环语句(for、while、do/while)和跳转语句(break、continue)。 二、对象和类 1. 对象:ActionScript是面向对象的语言,允许通过new关键字创建对象,如`var myObject:...
1. **基础语法**:包括变量声明(如var)、数据类型(如Number、String、Boolean)、运算符(算术、比较、逻辑)以及流程控制语句(如if...else、for、while循环)。 2. **对象和类**:ActionScript 2.0基于面向...
ActionScript 3.0中的enterFrame事件常用于实现游戏循环。 5. **物理引擎**:许多游戏需要模拟真实世界中的物理现象,如重力、碰撞检测等。ActionScript库如Box2D AS3可帮助实现这些功能。 6. **音频处理**:游戏...
### ActionScript教程详解 #### 一、ActionScript简介与应用场景 ActionScript是一种强大的脚本语言,主要用于Adobe Flash Player和Adobe AIR平台,使开发者能够创建动态交互式内容、应用程序和游戏。ActionScript...
操作符用于处理和比较数据,流程控制(如if语句、for循环、while循环)用于决定程序执行的顺序,而函数则封装了可重用的代码段。 二、面向对象编程 ActionScript支持面向对象编程(OOP),包括类、对象、继承、封装...
《深入探索Flash课件ActionScript3.0》 ActionScript3.0,作为Flash平台的核心编程语言,为创作交互式内容、游戏以及丰富的互联网应用程序(RIA)提供了强大的动力。本篇将围绕“Flash课件ActionScript3.0”展开,...