[](数组访问)

可用性

Flash Player 4。

用法

my_array = ["a0", a1,...aN]
myMultiDimensional_array = [["a0",...aN],...["a0",...aN]]
my_array[E] = value
myMultiDimensional_array[E][E] = value
object["value"]

参数

my_array 数组的名称。

a0, a1,...aN 数组中的元素。

myMultiDimensional_array 模拟多维数组的名称。

E  数组中元素的编号(或索引)。

object 对象的名称。

value 字符串或计算结果为字符串的表达式,用来命名对象的属性。

返回

无。

说明

运算符;用指定的元素(a0,等等)初始化新数组或多维数组,或者访问数组中的元素。数组访问运算符使您能够动态地设置和获取实例、变量和对象的名称。它还使您能够访问对象属性。

用法 1:数组是一种对象,其属性称作“元素”,这些元素由称作“索引”的数字逐一标识。创建数组时,需用数组访问运算符(或“括号”)括住元素。一个数组可以包含各种类型的元素。例如,下面这个名为 employee 的数组包含三个元素;第一个元素是数字,另外两个元素是字符串(在引号内)。

employee = [15, "Barbara", "Erick"];

用法 2:可以通过嵌套括号来模拟多维数组。下面的代码创建一个名为 ticTacToe 且含有三个元素的数组;而每个元素也是一个具有三个元素的数组。

ticTacToe = [[1,2,3],[4,5,6],[7,8,9]];

// 在测试影片模式下,选择“调试”>“变量列表”
// 来查看数组元素的列表

用法 3:用括号括住每个元素的索引可直接对其进行访问;这样可以向数组添加新元素以及更改或获取现有元素的值。数组中第一个元素的索引永远是 0:

my_array[0] = 15;
my_array[1] = "Hello";
my_array[2] = true;

可以使用括号来添加第四个元素,如下所示:

my_array[3] = "George";

用法 4:括号可用于访问多维数组中的元素。第一对括号标识原始数组中的元素,第二对括号标识嵌套数组中的元素。下面的几行代码将数字 6 发送到“输出”面板。

ticTacToe = [[1,2,3],[4,5,6],[7,8,9]];
trace(ticTacToe[1][2]);

// 返回 6

用法 5:您可以用数组访问运算符代替 eval 函数,从而动态地设置并获取影片剪辑名称的值或一个对象的任何属性:

name["mc" + i] = "left_corner";

示例

用法 1:下面的代码范例说明新建空 Array 对象的两种不同方式;第一行使用括号。

my_array =[];
my_array = new Array(); 

用法 1 和 2:下面的示例创建一个名为 employee_array 的数组,并使用 trace() 动作将这些元素发送到“输出”面板。在第四行中,更改数组中的一个元素,而第五行将刚修改过的数组发送到“输出”面板:

employee_array = ["Barbara", "George", "Mary"];
trace(employee_array);
// Barbara, George, Mary
employee_array[2]="Sam";
trace(employee_array);
// Barbara, George, Sam

用法 3:在下面的示例中,计算括号中的表达式 ("piece" + i),并将结果用作要从影片剪辑 my_mc 中获取的变量名。在此示例中,变量 i 与所释放的按钮必须在同一个时间轴上。例如,如果变量 i 等于 5,影片剪辑 my_mc 中的变量 piece5 的值将显示在“输出”面板中:

on (release) {
  x = my_mc["piece"+i];
  trace(x);
}

用法 3:在下面的代码中,计算括号中的表达式,并将结果用作要从影片剪辑 name_mc 中获取的变量名:

name_mc["A" + i];

如果您熟悉 Flash 4 动作脚本的斜杠语法,可以使用 eval 函数来达到同样的结果:

eval("name.A" & i);

用法 3:您还可以在赋值语句的左侧使用数组访问运算符,从而动态地设置实例、变量和对象的名称:

name[index] = "Gary";

另请参见

Array 类Object 类eval()