`
sjkgxf7191
  • 浏览: 252278 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

根据属性值对Array进行排序

阅读更多
_trees = new Array();
			
for(var i:int = 0; i < 500; i++)
{
	var tree:Shape = new Shape();
	tree.z = Math.random() * 10000;
	_trees.push(tree);
}

_trees.sortOn("z", Array.NUMERIC | Array.DESCENDING);
for(i = 0; i < 500; i++)
{
	addChild(_trees[i] as Shape);
}

 

 

Array.sort(compareFunction , sortOptions)其参数定义如下:

  • compareFunction - 一个用来确定数组元素排序顺序的比较函数。此参数是可选的。比较函数应该用两个参数进行比较。给定元素 A 和 B,compareFunction 的结果可具有以下三个值之一:
    • s-1,如果 A 应在排序后的序列中出现在 B 之前
    • 0,如果 A 等于 B
    • 1,如果 A 应在排序后的序列中出现在 B 之后
  • sortOptions - 一个或多个数字或定义的常数,相互之间由 | (按位 OR)运算符隔开,它们将排序的行为从默认行为更改为其它行为。此参数是可选的。下面是 sortOptions 可接受的值:

         1 或 Array.CASEINSENSITIVE
         2 或 Array.DESCENDING
         4 或 Array.UNIQUESORT
         8 或 Array.RETURNINDEXEDARRAY
         16 或 Array.NUMERIC

 

private var _shapes:Array;

_shapes.sort(depthSort);

private function depthSort(objA:DisplayObject, objB:DisplayObject):int
{
	var posA:Vector3D = objA.transform.matrix3D.position;
	posA = _holder.transform.matrix3D.deltaTransformVector(posA);
	var posB:Vector3D = objB.transform.matrix3D.position;
	posB = _holder.transform.matrix3D.deltaTransformVector(posB);
	return posB.z - posA.z;
}

 

 

分享到:
评论

相关推荐

    JS根据json数组多个字段排序及json数组常用操作

    /**数组根据数组对象中的某个属性值进行排序的方法 * 使用例子:newArray.sort(sortByArr(['number'],false)) //表示根据number属性降序排列;若第二个参数不传递,默认表示升序排序 * @param attr 排序的属性 ['...

    SortedList类

    SortedList最合适对一列健/值对 进行排序,在排序时,是对键进行排序,SortedList 是 Hashtable 和 Array 的混合。当使用 Item 索引器属性按照元素的键访问元素时,其行为类似于 Hashtable。当使用 GetByIndex 或 ...

    c#的sortedlist使用方法

    SortedList最合适对一列健/值对 进行排序,在排序时,是对键进行排序,SortedList 是 Hashtable 和 Array 的混合。当使用 Item 索引器属性按照元素的键访问元素时,其行为类似于 Hashtable。当使用 GetByIndex 或 ...

    javascript文档

    length 属性 (Array) 返回比数组中所定义的最高元素大 1 的整数值 。 length 属性 (Function) 返回为函数所定义的参数个数。 length 属性 (String) 返回 String 对象的长度。 小于运算符 (&lt;) 比较两个表达式,...

    微软JavaScript手册

    length 属性 (Array) 返回比数组中所定义的最高元素大 1 的整数值 。 length 属性 (Function) 返回为函数所定义的参数个数。 length 属性 (String) 返回 String 对象的长度。 小于运算符 (&lt;) 比较两个表达式,...

    JScript 语言参考

    length 属性 (Array) 返回比数组中所定义的最高元素大 1 的整数值 。 length 属性 (Function) 返回为函数所定义的参数个数。 length 属性 (String) 返回 String 对象的长度。 小于运算符 (&lt;) 比较两个表达式,...

    01 JavaScript基本语法.ppt

    目的: ...网页中嵌入脚本有两种方式:使用标签或外部 *. js文件 理解变量、数据类型和运算符 JavaScript 中声明变量:var 变量名 "+"可以用于两个数相加,还可以用于连接...Array对象常用的属性是length,排序方法:sort

    02 函数与事件.ppt

    目的: 掌握什么是 JavaScript ...网页中嵌入脚本有两种方式:使用标签或外部 *. js文件 理解变量、数据类型和运算符 ...Array对象常用的属性是length,排序方法:sort 循环结构:for 循环、while循环、do-while循环

    VBScript 语言参考中文手册CHM

    PropertyGet 语句 声明在窗体属性过程中获取(返回)属性值的名称,参数和代码。 PropertyLet 语句 声明在窗体属性过程中指定属性值的名称,参数和代码。 PropertySet 语句 声明在窗体属性过程中设置引用到对象的...

    VBScript 语言参考

    通过对信息进行分组,可以使您方便地研究 Visual Basic 脚本的各个主题。 可以在“字母顺序关键字列表”中找到 VBScript 语言的所有主题。如果只需要查看某个主题(例如对象),则有对该主题进行详细说明的章节可供...

    VBSCRIP5 -ASP用法详解

    通过对信息进行分组,可以使您方便地研究 Visual Basic 脚本的各个主题。 可以在“字母顺序关键字列表”中找到 VBScript 语言的所有主题。如果只需要查看某个主题(例如对象),则有对该主题进行详细说明的章节可供...

    FLASH MX Professional 2004应用开发

    2.3.5 对数据类型进行操作 2.4 创建循环 2.5 使用条件逻辑 2.5.1 条什结构 2.5.2 比较运算符 2.5.3 逻辑运算符 2.5.4 条件运算符 2.5.5 Switch语句 2.6 创建函数 2.6.1 定义函数 2.6.2 函数的返同值 2.6.3 创建函数...

    VBSCRIPT中文手册

    PropertyGet 语句 声明在窗体属性过程中获取(返回)属性值的名称,参数和代码。 PropertyLet 语句 声明在窗体属性过程中指定属性值的名称,参数和代码。 PropertySet 语句 声明在窗体属性过程中设置引用到对象的...

    vb Script参考文档

    PropertyGet 语句 声明在窗体属性过程中获取(返回)属性值的名称,参数和代码。 PropertyLet 语句 声明在窗体属性过程中指定属性值的名称,参数和代码。 PropertySet 语句 声明在窗体属性过程中设置引用到对象的...

    javascript入门笔记

    var 变量名1=值,变量名2=值,变量名3; 3、变量名命名规范 1、由字母,数字,下划线以及 $ 组成 var user_name; 正确 var user-name; 错误 var $uname; 正确 2、不能以数字开头 var 1name;错误 3、不能使用JS...

    实现一个圆类

    (3) 编写静态方法sort对这10个圆对象进行升序排序,并输出。 (4) 编写静态方法computeArea计算这10个圆中互不相交和包含的圆的面积之和。 提交要求:打包为可以执行的JAR文档,其中要包含源程序文件。

    net学习笔记及其他代码应用

    9.描述一下C#中索引器的实现过程,是否只能根据数字进行索引? 答:不是。可以用任意类型。 10.求以下表达式的值,写出您想到的一种或几种实现方法: 1-2+3-4+……+m [Page] 答: int Num = this.TextBox1.Text....

    前端面试必问问题18道—一篇文章进大厂

    求和,求最大(小)值,排序,多个数组合并(concat),去重,分割,find,indexOf,filter,join, toString等等 数组的concat,join,slice,toString方法不会改变原数组 数组的splice,push,pop,unshift,shift...

    Numpy用户指南.pdf

    目录 1. NUMPY 介绍 1 1.1 什么是 NUMPY? 1 1.2 为什么 NUMPY 这么快? 3 1.3 还有谁在使用 NUMPY? 3 2. 快速入门教程 4 2.1 先决条件 4 ...2.6.1使用索引数组进行索引 27 ...7.4.3 在C中对ndarray进行子类型化 249

    详解javascript数组去重问题

    遍历原始数组依次跟结果数组中的元素进行比较,检测是否重复。于是乎,我写出了如下代码A: Array.prototype.clearRepetitionA = function(){ var result = []; var isRepetition; for(var i=0; i&lt;this....

Global site tag (gtag.js) - Google Analytics