sort(Array.sort 方法)

public sort([compareFunction:Object], [options:Number]) : Array

对数组中的元素进行排序。Flash 根据 Unicode 值排序。(ASCII 是 Unicode 的一个子集。)

默认情况下,Array. sort() 按下面的列表中的说明进行排序:

如果您想通过使用不同于默认设置的设置来对数组进行排序,可以使用 options 参数的条目中描述的排序选项之一,或者,也可以创建自己的自定义函数来进行排序。如果您创建自定义函数,则可以通过调用 sort() 方法来使用它,将您的自定义函数的名称用作第一个参数 (compareFunction)。

可用性:ActionScript 1.0、Flash Player 5 ― Flash Player 7 中新增数组排序选项。

参数

compareFunction:Object [可选] ― 一个用来确定数组中元素排序顺序的比较函数。给定元素 A 和 B,compareFunction 的结果可具有以下三个值之一:

options:Number [可选] ― 所定义常数的一个或多个数字或名称,相互之间由 |(按位“或”)运算符隔开,它们将排序的默认行为更改为其它行为。options 参数可接受以下值:

有关此参数的详细信息,请参阅 Array.sortOn() 方法。

注意:Array.sort() 是在 ECMA-262 中定义的,但 Flash Player 7 中引入的数组排序选项是对 ECMA-262 规范的特定于 Flash 的扩展。

返回

Array ― 返回值取决于您是否传递任何参数,如下面的列表中所述:

示例

用法 1:下面的示例显示在为 options 传递值和不传递值这两种情况下如何使用 Array.sort()

var fruits_array:Array = new Array("oranges", "apples", "strawberries", "pineapples", "cherries");
trace(fruits_array); // Displays oranges,apples,strawberries,pineapples,cherries.
fruits_array.sort();
trace(fruits_array); // Displays apples,cherries,oranges,pineapples,strawberries.
trace(fruits_array); // Writes apples,cherries,oranges,pineapples,strawberries.
fruits_array.sort(Array.DESCENDING);
trace(fruits_array); // Displays strawberries,pineapples,oranges,cherries,apples.
trace(fruits_array); // Writes strawberries,pineapples,oranges,cherries,apples.

用法 2:下面的示例将 Array.sort() 用于比较函数。条目是按照 name:password 的形式排序的。仅使用条目的名称部分作为关键字排序。

var passwords_array:Array = new Array("mom:glam", "ana:ring", "jay:mag", "anne:home", "regina:silly");
function order(a, b):Number {
var name1:String = a.split(":")[0];
var name2:String = b.split(":")[0];
if (name1<name2) {
return -1;
} else if (name1>name2) {
return 1;
} else {
return 0;
}
}
trace("Unsorted:");
//Displays Unsorted:
trace(passwords_array);
//Displays mom:glam,ana:ring,jay:mag,anne:home,regina:silly.
//Writes mom:glam,ana:ring,jay:mag,anne:home,regina:silly
passwords_array.sort(order);
trace("Sorted:");
//Displays Sorted:
trace(passwords_array);
//Displays ana:ring,anne:home,jay:mag,mom:glam,regina:silly.
//Writes ana:ring,anne:home,jay:mag,mom:glam,regina:silly.

请参阅

| 按位 OR 运算符, sortOn(Array.sortOn 方法)


Flash CS3

 

评论添加到页面后给我发送电子邮件 | 评论报告

当前页: http://livedocs.adobe.com/flash/9.0_cn/main/00001366.html