`
it_liuyong
  • 浏览: 100521 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

as3数组的进一步用法

    博客分类:
  • flex
 
阅读更多
首先值得一提的是AS3的 Array 有了像 String 一样的 indexOf() 和 lastIndexOf() 。另外增加了几个很有用的 Method。

every(callback:Function, thisObject:* = null):Boolean
检测是否数组所有元素都满足 callback 方法指定的条件。

some(callback:Function, thisObject:* = null):Boolean
检测数组中是否有元素满足 callback 方法指定的条件。

filter(callback:Function, thisObject:* = null):Array
根据 callback 方法指定的条件过滤数组,返回由符合条件的元素组成的新数组

map(callback:Function, thisObject:* = null):Array
数组的每一个元素执行 callback 方法,返回由对应的结果组成的新数组

forEach(callback:Function, thisObject:* = null):void
数组的每一个元素执行 callback 方法,不返回任何值

第二个参数 thisObject 是第一个参数 callback 的执行范围,即方法内部的 this ,一般不需指定。

callback 的参数也都是一样的
function callback(item:*, index:int, array:Array)
item 就是数组的每一个元素,如果数组元素类型统一就指明该类型,否则用 * 。index是数组当前元素的索引,array是操作的数组。参数名称可以任意起。如果只使用第一个参数这些方法都不改变原数组,使用后两个参数则可对原数组进行操作。不推荐这样做。

程序代码 public function TestArray(){
    var arr1:Array = [1,3,5,7,9,11];
    //是否所有元素是两位数(false)
    trace(arr1.every(isDoubleDigit));
    //是否有两位数的元素(true)
    trace(arr1.some(isDoubleDigit));
    //arr1数组元素执行doubleObject方法的返回值组成新的arr2数组
    var arr2:Array = arr1.map(doubleObject);
    //arr3是arr2中满足 bigDouble 条件的元素组成的新数组
    var arr3:Array = arr2.filter(bigDouble);
    trace("arr1:",arr1);
    trace("arr2 double :");
    arr2.forEach(traceDouble);
    trace("arr3 double :");
    arr3.forEach(traceDouble);
    //double方法使用了后两个参数,直接修改了原数组
    arr1.forEach(double);
    trace("arr1:",arr1);
}
private function isDoubleDigit(n:int,i:int,a:Array):Boolean{
    return n > 10;
}
private function doubleObject(n:int,i:int,a:Array):Object{
    return {double:n * 2};
}
private function bigDouble(o:Object,i:int,a:Array):Boolean{
    return o.double > 10;
}
private function traceDouble(o:Object,i:int,a:Array):void{
    trace(o.double);
}
private function double(n:int,i:int,a:Array):Object{
    a[i] *= 2;
}

输出:

程序代码 false
true
arr1: 1,3,5,7,9,11
arr2 double :
2
6
10
14
18
22
arr3 double :
14
18
22
arr1: 2,6,10,14,18,22
文章来源: 我要学flash网(www.51xflash.com) 原文地址:http://www.51xflash.com/article/as3/201005/05-11518.html
分享到:
评论

相关推荐

    使用foreach循环遍历数组的用法例子(附详细步骤).txt

    ### 使用foreach循环遍历数组的用法例子及详细步骤 #### 一、基础知识介绍 在PHP编程语言中,数组是一种非常重要的数据结构,用于存储多个值。数组可以是一维的,也可以是多维的。在处理数组时,经常需要遍历数组...

    winsock数组—example

    学习“winsock控件数组—example”这个实例,你不仅可以理解Winsock控件的基本用法,还能掌握如何在实际项目中有效地管理多个并发连接。这将对你的Windows网络编程技能大有裨益,尤其是当你需要开发多用户交互的应用...

    flash 调用外部数组.doc

    为了将这些数据转换为数组,我们使用了`split()`方法,它可以根据提供的分隔符将字符串分割成多个子字符串,然后将结果存储在一个新数组`files`中。在这个例子中,我们用逗号作为分隔符,即`fl.split(",")`。 接着...

    php数组学习之一

    索引数组是由数字索引(默认从0开始)组成的数组,而关联数组则使用字符串作为键来标识每个元素。例如: ```php $simpleArray = array(1, 'two', 3.14); // 索引数组 $associativeArray = array('name' => 'John', ...

    as3xls类包

    这个库的主要优点在于,它能够将Excel表格的数据转换为AS3可以处理的数据结构,如Array或ArrayCollection,以便在Flex应用程序中进行进一步的处理和显示。 AS3XLS的核心类是`XLS`,它是用来加载和解析Excel文件的...

    Flex利用as3xls导入excel数据表

    1. **安装和引入AS3XLS库**:首先,开发者需要将AS3XLS库文件(如as3xls.swc)添加到Flex项目的类路径中,以便在代码中使用其提供的类和方法。 2. **创建Excel对象**:在代码中,使用AS3XLS库创建一个Excel对象,...

    labview字符串拆分到数组 支持中文1

    LabVIEW(Laboratory Virtual Instrument Engineering Workbench)是一种图形化编程环境,主要用于开发数据采集、测试测量和...理解这个函数的工作原理和使用方法,将有助于在LabVIEW编程中更加高效地处理字符串数据。

    AS3 格子方法检测碰撞的代码

    "AS3 格子方法检测碰撞的代码" 提供了一种使用格子(Grid)数据结构来优化碰撞检测的方法。这种方法通常称为“空间分区”或“格子空间划分”,它将游戏场景划分为小的单元格,每个对象被分配到相应的单元格中,从而...

    Flex导出Excel之as3xls(包括datagrid全选功能)

    之后,将DataGrid中的数据转换为适合Excel的数据结构,比如二维数组,然后使用as3xls的API填充到工作表中。 对于全选功能,DataGrid控件提供了selectAll()方法,可以用来选择所有数据项。当用户触发全选操作时,...

    as3带进度条上传实例

    在Adobe Flex框架下使用ActionScript 3 (AS3) 进行文件上传开发时,加入进度条功能是提升用户体验的关键环节。本篇将详细介绍如何实现一个带有进度条的文件上传功能,包括连接服务器、发送文件以及更新进度条的具体...

    oracle存储过程返回多行多列的结构化数组,java调用并解析

    在实际应用中,你可能需要将这些数据封装到Java的自定义对象中,或者使用其他方法进行进一步处理。为了简化配置,你的项目可能使用了诸如Apache DBCP或HikariCP这样的连接池库,通过配置"poolman.xml"文件来管理...

    VBA示例函数之 求人不如自已动手 统计数组中非重复数据个数

    3. **遍历数组并统计非重复数据**:遍历originalArray中的每一个元素,如果该元素不在uniqueSet中,将其添加到uniqueSet,并增加非重复数据的计数器。 ```vba Dim i As Long For i = LBound(originalArray) To ...

    PHP数组的数据导入数据库当中。

    在PHP中,我们可以使用多种方法来连接数据库,如MySQLi或PDO等。这里以MySQLi为例: ```php // 数据库配置 $host = "localhost"; $dbname = "your_database_name"; $username = "your_username"; $password = "your...

    PHP程序设计-3期(KC016) 2.7.3数组遍历课后习题.doc

    在本节"PHP程序设计-3期(KC016)2.7.3数组遍历"中,我们探讨了如何遍历数组并执行特定操作,如计算数组元素的平均值。这是一项基础但至关重要的技能,对于处理任何涉及数据集合的PHP应用程序都是必要的。 数组遍历...

    maopaofa.rar_VB数组排序_maopaofa_数组排序

    通过研究这些文件,开发者可以进一步了解和实践VB数组排序。 总的来说,VB数组排序中的冒泡法是一种直观的教学工具,可以帮助初学者理解和掌握排序算法的基本概念。通过实践和调试代码,可以提升对数据结构和算法的...

    PHP中把对象数组转换成普通数组的方法

    3. 最后,将转换得到的键值对存入新的数组,并返回这个新数组。 上述过程可以通过定义一个递归函数`std_class_object_to_array()`来实现。这个函数接受一个对象参数,然后递归地将对象中的所有属性值转换为普通数组...

    AS3ActionScript编程

    3. **对象和数组**:如何创建和操作对象,理解引用类型和值类型的区别,以及数组的使用和动态数组的概念。 4. **事件处理**:讲解Event类和EventListener接口,如何添加和移除事件监听器,以及常见的事件类型如 ...

    Flash AS3 扫雷游戏(源文件)

    在AS3中,我们可以使用`Math.random()`函数生成随机数,结合数组来存储每个格子的状态(是否有雷、是否已翻开、是否已标记)。 2. **用户交互**:用户通过点击或右键标记进行游戏。在AS3中,我们需要监听舞台的鼠标...

    php操作mysql查询并返回数组封装函数源码

    值得注意的是,这个`query`方法会返回一个可以直接遍历的数组,这意味着查询结果已经被转换为便于处理的数据结构,无需额外的处理步骤,如`fetch_array()`或`fetch_assoc()`等。 在标签中,"php查询"指的是PHP的...

Global site tag (gtag.js) - Google Analytics