Flash AS3.0 数组应用
- 格式:docx
- 大小:48.31 KB
- 文档页数:17
1
Flash AS3.0 数组应用
数组有两种形式:
第一种:数字形式的数组:
var myNumber:Array = new Array(1,2,3,4,5);
第二种:文本形式的数组:
var myString:Array=["张志晨","王升军","宋广佳"]
换言之,数组的值是字符串型的应该用 [ ] 创建,是
数字型的则用 ( )创建。
创建一维数组,同时也进行了初始化。
2 数组应用
push 在数组尾部增加一个元素
pop 删除数组的最后一个元素
shift 删除数组的第一个元素
indexof 返回该元素在数组中的位置
sort 对数组进行自定义排序
splice 将元素添加到指定的位置并删除所需元素
concat 将指定的元素与原来的数组连接
join 将数组中的元素转为字符串,在元素之间插入指定分隔符,返回字符串
unshift 在元素的开始增加一个元素
reverse 把现有的数组的顺序完全倒过来
这里都是常用的一些方法,经常会用到,还老是忘记,这里就稍微总结下,在做游戏和一些程序的时候会经常用到,用数组来存取读取简单的数据还是非常容易方便的。
3 理解数组[学习笔记]
数组:也叫索引数组。
索引数组是一个对象,其属性由表示该属性在数组中位置的数字来标识。此数字称为索引。所有索引数组都从零开始,这意味着数组中的第一个元素为 [0],第二个元素为 [1],依此类推。
4 创建数组[学习笔记]
若要创建一个 Array 对象,请使用构造函数 new Array()。如:
var myNumber:Array = new Array(1,2,3,4,5);
5 访问数组[学习笔记]
访问数组中的元素,请使用数组访问运算符 ([])。如:
myNumber[0] = 1;
6 多维数组[学习笔记]
您可以创建一个多维数组。
方法是创建一个索引数组,然后给它的每个元素分配不同的索引数组。这样的数组被视为是多维的, 2
原因是它可用于表示表中的数据。
8 数组应用1[学习笔记]
创建一个长度为0的空数组
var myArr:Array = new Array();
9 数组应用2[学习笔记]
创建一个长度为10的数组,0索引为字符串"张志晨",并添加新元素--字符串"张景利。
var myArr:Array = new Array(10);
myArr[0] = "张志晨";
myArr.push("张景利");
10 数组应用3[学习笔记]
创建一数组,并直接赋值.
var myArr:Array = new Array("得权小学", "文化小学", "红星小学");
11 二维数组[学习笔记]
中学数学无手直角坐标系中,点的坐标表示为:A(x,y)。
可是在flash里,表示为A[x][y],看上去有点散,不直观。但只要我学习AS3.0,就只能这么做。埋怨什么也没用。
//创建二维数组myArray[9][9](九九方阵):
var myArray:Array = new Array();
//赋值
for(var i=0;i<9;i++)
{
myArray[i] = new Array();
for(var j=0;j<9;j++)
{
myArray[i][j] =i*9+j
}
}
用双循环来完成。
12 回复:Flash AS3.0 数组应用[学习笔记]
中学数学 直角坐标系中,点的坐标表示为:A(x,y)。
可是在flash里,表示为A[x][y],看上去有点散,不直观。但只要我学习AS3.0,就只能这么做。埋怨什么也没用。
//创建二维数组myArray[9][9](九九方阵):
var myArray:Array = new Array(); 3
//赋值
for(var i=0;i<9;i++)
{
myArray[i] = new Array();
for(var j=0;j<9;j++)
{
myArray[i][j] =i*9+j
}
}
用双循环来完成。
13 回复:Flash AS3.0 数组应用[学习笔记]
构造函数摘要
长度 : uint
方法摘要
1. Array(numElements:int = 0)
创建一个长度为 0 或更大的新数组,或者创建由一列指定的元素(这些元素可能具有不同的数据类型)填充的数组。
使用 Array() 创建下列各项之一:
空数组
具有特定长度,但其元素未定义值的数组
其元素具有特定值的数组
使用此函数类似于使用 Array 构造函数创建数组。
您可以传递一个数字 (numElements) 或者传递包含一个或多个不同类型的一列元素 (element0,
element1, ... elementN)。
能够接受一种以上数据类型的参数以 Object 类型在签名中列出。
参数:
numElements:int(默认:0) [可选] - 一个指定数组中元素数量的正整数。您可以指定 numElements,也可以指定元素列表,但不能同时指定两者。
实例一:
创建一个长度为0的空数组
复制内容到剪贴板代码:
4
package {
import flash.display.Sprite;
public class Array_Array extends Sprite {
public function Array_Array() {
var myArr:Array = new Array();
trace(myArr.length); // 0
}
}
}
实例二:
创建一个长度为5的数组,0索引为字符串"one",并添加新元素--字符串"six"[需调用数组函数push()]
复制内容到剪贴板代码:
package {
import flash.display.Sprite;
public class Array_Array_2 extends Sprite {
public function Array_Array_2() {
var myArr:Array = new Array(5);
trace(myArr.length); // 5
myArr[0] = "one";
myArr.push("six");
trace(myArr); // one,,,,,six
trace(myArr.length); // 6
}
}
}
2. Array(... values)
创建一列新数组,并直接赋值.
语法:public function Array(numElements:int = 0)
参数:
... values --从0索引直接赋值到更多索引
实列:
创建一个长度为3的新数组,并赋值--字符串"one","two","three"
14 回复:Flash AS3.0 数组应用[学习笔记]
复制内容到剪贴板代码:
package {
import flash.display.Sprite;
public class Array_Array_3 extends Sprite {
public function Array_Array_3() { 5
var myArr:Array = new Array("one", "two", "three");
trace(myArr.length); // 3
trace(myArr); // one,two,three
}
}
}
3. concat()
将参数中指定的元素与数组中的元素连接,并创建新的数组
as3.0语法: function concat(... args):Array
参数:
... args :可以是存储各种各样的数据类型,包括数字、字符串、对象,如果赋值为空,将复制原数组并创建新数组.
返回:数组
实例:
创建numbers数组,并赋值--1,2,3
创建letters数姐,并赋值--a,b,c
创建numbersAndLetters,并从Letters数组复制所有元素到numbers数组
创建lettersAndNumbers,并从numbers数组复制所有元素到Letters数组
复制内容到剪贴板代码:
var numbers:Array = new Array(1, 2, 3);
var letters:Array = new Array("a", "b", "c");
var numbersAndLetters:Array = numbers.concat(letters);
var lettersAndNumbers:Array = letters.concat(numbers);
trace(numbers); // 1,2,3
trace(letters); // a,b,c
trace(numbersAndLetters); // 1,2,3,a,b,c
trace(lettersAndNumbers); // a,b,c,1,2,3
4.every() 方法[as3.0新增]
检测是否数组所有元素都满足 callback 函数方法指定的条件。
as3.0语法:function every(callback:Function, thisObject:* = null):Boolean
参数:
callback:Function --检测函数
thisObject:* (default = null) --判断条件
返回:布尔值
实例: