_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;
}
分享到:
相关推荐
`compare`函数返回一个新的比较函数,这个新函数比较两个对象的指定属性(`property`),并根据属性值的差异决定排序。 为了实现更灵活的排序,例如支持升序和降序,我们可以创建一个`sortBy`函数,接受属性名和一...
这涉及到对对象集合进行排序,这些对象具有特定的属性,我们希望通过这些属性值来确定集合中的顺序。本篇将深入探讨如何使用.NET Framework进行属性数组排序,并提供相关的ASP.NET源码示例。 首先,我们需要理解...
本教程将深入探讨如何在LabVIEW中对二维数组进行排序,这在处理实验数据、进行算法分析或构建用户界面时都是必备技能。 首先,理解二维数组的基本操作至关重要。在LabVIEW中,数组通常通过数组常量、数组构造函数或...
在这个场景中,我们面临的问题是如何根据特定规则对坐标进行排序。坐标通常由一对数值(如x,y)表示,它们可能代表二维空间中的点。排序规则可能包括按照x值、y值或者某种复杂的规则(如距离中心点的远近)来排列...
这个函数的主要目标是根据时间值对一组数据进行排序。在计算机科学中,时间通常表示为日期和时间戳,它们可以是Unix时间戳(自1970年1月1日以来的秒数)或者是更具体的日期字符串。时间排序函数需要能够处理这些不同...
本资源提供的"原生js图片按自定义属性排序效果源码下载"是一个实用的示例,它展示了如何利用JavaScript来实现对图片进行排序,根据自定义的属性值来调整它们在页面上的显示顺序。下面我们将深入探讨相关的JavaScript...
特别是当数据存储在一个多维数组中时,如何有效地根据某一特定字段来对整个数组进行排序变得尤为重要。下面我们将详细介绍如何利用PHP实现这一功能。 #### 一、理解多维数组与字段概念 1. **多维数组**: 多维数组...
对于对象数组,可以使用`sortOn`方法根据对象中的某个属性值进行排序。例如,下面的代码片段展示了如何对一个包含`productName`和`version`属性的对象数组进行排序: ```actionscript var flexArray:Array = new ...
ArrayCollection提供了`sort`方法,可以方便地根据指定的比较函数对数据进行排序。例如,如果我们想按照数值大小升序排列ArrayCollection,可以这样做: ```actionscript arrayCollection.sort = new Sort(); ...
总结来说,C#提供了多种对整型数组进行排序的方法,包括`Array.Sort()`、`Array.Reverse()`以及Linq的`OrderBy()`和`OrderByDescending()`。根据实际需求,你可以选择合适的方式来实现排序功能。通过理解这些基础...
在`sort()`方法内部,我们通过`a[key]`和`b[key]`获取对象的属性值,然后进行比较。 四、动态排序 在实际应用中,我们可能需要实现动态排序,即用户可以通过点击表格列头来改变排序方式。例如: ```html 股票...
在给定的标题和描述中,我们看到作者分享了一个实现根据对象属性值对数组排序的方法。这个方法适用于数组中的每个元素都是一个对象,且需要根据对象的某个键(key)的值进行升序或降序排序的情况。下面将详细解释这...
4. **排序数据**:根据字段名和排序顺序(升序或降序)对数据数组进行排序。可以使用JavaScript内置的`Array.prototype.sort`方法,提供一个比较函数来定义排序规则。 5. **重新渲染表格**:根据排序后的数据数组...
这个属性可以用来判断一个对象是否是由Array构造函数创建的,通常在进行类型检查时会用到。然而,由于JavaScript的动态性,constructor属性是可以被修改的,所以在实际开发中,更推荐使用`Array.isArray()`方法来...
在这个例子中,遍历经过array_flip()处理的数组$a,根据键值对原数组$b的值进行重新排序并存入$result数组中。 6. var_dump()输出排序结果 var_dump()函数用于输出变量的相关信息,包括类型和值。在这里,通过var_...
在提到的“JSON字段属性从大到小排序”这个话题中,我们主要关注的是如何按照特定字段的值对JSON对象数组进行排序。在描述中提到了排序前后的情况,并特别指出排序的字段为"clickIndex"。在编程中,如果有一个包含多...
为了应对不同场景下的排序需求,本文将介绍一个自定义的JavaScript函数,该函数支持对数组或对象进行排序,并且能够根据数组或对象中嵌套的任意深度的子键进行排序。以下是对该函数及其使用方法的详细解析。 函数...
- 如果需要对对象的属性值进行排序,确保比较的属性存在,否则会抛出错误。 - 当涉及到多级嵌套的JSON数据时,可能需要递归处理或使用更高级的工具,如Lodash库的`_.sortBy()`函数。 以上就是JSON排序的两种常见...
Objective-C中可以使用`NSDictionary`的`sortedKeysAndObjectsUsingComparator:`,Swift中的`Dictionary`则可以使用`sorted(by:)`,但是需要注意,字典本身无顺序,通常我们会对键或值进行排序,转化为`Array`后再...
在这种情况下,我们可能需要根据某个特定属性(如年龄或分数)对所有记录进行排序。 对于多维数组排序,PHP提供了`usort()`、`uasort()`和`uksort()`函数,它们允许我们自定义排序规则。`usort()`用于按用户定义的...