|
Flash AS教程:分类说明Flash中数组的用法(1) ★关于数组的详细介绍,这里就省略了,这里主要通过对一个数组的操作来分类说明数组的用法。首先在时间轴写如下代码:
var shuzu = ["i", "love", "FLASH"];
然后分类操作:
●添加元素:
→直接添加:可以直接通过数组下标添加新数组,中间添加空元素。
shuzu[4]="!"; trace(shuzu);// i,love,flash,,!
→用length属性添加:增加length长度可以增加空元素。
shuzu.length=5; trace(shuzu);// i,love,flash,,,
→push()方法:向数组末尾添加一个或多个新元素,并返回数组长度。
shuzu.push("!","?"); trace(shuzu); // i,love,flash,!,? trace(shuzu.push()); //5
它还可以用来嵌套数组,把上面的代码换成下面的样子:
shuzu2=["!","?"]; shuzu.push(shuzu2); trace(shuzu); // i,love,flash,!,? trace(shuzu.push()); // 4
(因为这次“!”和“?”是做为一个嵌套数组作为shuzu的元素的,所以这里是4不是5。
→concat()方法:也是向数组末尾添加一个或多个元素,但它并不修改原数组,而是返回一个新数组。
var shuzu2=shuzu.concat("?"); trace(shuzu); //i,love,flash trace(shuzu2); /i,love,flash,?
它也可以用来合并两个数组,但不是嵌套,而是把另一个数组的每个元素作为但个元素添加进来。
var shuzu = ["i", "love", "flash"]; shuzu2=["!","?"]; shuzu3=shuzu.concat(shuzu2); trace(shuzu3); // i,love,flash,!,? trace(shuzu3.length); //5 (注意,这次是5,而不是4了)
→unshift()方法:向数组开头添加一个或多个新元素,并返回数组长度。
shuzu.unshift("!","?"); trace(shuzu); // !,?,i,love,flash trace(shuzu.unshift()); //5
→splice()方法:用来添加或删除数组元素。语法:shuzu.splice(kaishi,shanchushu,t1,t2……tn)其中,kaishi是一个数字,表示要删除或添加元素的开始位置;shanchushu也是一个数字,表示要删除的元素数量,如果省略,将删除kaishi及其后的所有元素,如果为0就不删除任何元素;t1,t2……tn表示要添加到kaishi之前的元素。此方法返回所删除的元素构成的数组。
shuzu.splice(1,1,"!","?"); trace(shuzu); // i,!,?,flsh trace(shuzu.splice(1,2)); //因为第一句代码已经把数组修改成["i","!","?","flash"],所以这里输出!,?
●删除元素:
→delete操作符:delete操作符主要用来彻底删除命名数组元素,但对于编号数组,它只能将数组的元素设置为undefined,而不会彻底删除。它的语法为:delete shuzu[bianhao],bianhao为要设置成undefined的元素下标。
delete shuzu[1]; trace(shuzu); // i,undefined,flash trace(shuzu.length); //依旧为3,而不是2
→用length属性删除:减小length长度可以从数组末尾删除元素。
shuzu.length=2;
|