我有一个由数字数据组成的对象,如下所示:

var records:Object = {};

records["nh"] = { medinc:66303};
records["ct"] = { medinc:65958};
records["nj"] = { medinc:65173};
records["md"] = { medinc:64596};


等等...

我想知道如何根据“ medinc”中的值对对象进行数字排序?

谢谢你的帮助

最佳答案

var records:Object = {};
var arr:Array = [
                    records["nh"] = { medinc:66303},
                    records["ct"] = { medinc:65958},
                    records["nj"] = { medinc:65173},
                    records["md"] = { medinc:64596},
                    records["kk"] = { medinc:61321}
                ];

arr.sortOn("medinc", Array.NUMERIC);

for each (var value:* in arr){
    trace(value.medinc);
}


由于排序,对象是一个关联数组,因为它是没有意义的,没有访问索引。而是将其放在一个数组(索引数组)中。排序的意思。

并参考以下文档。

Assoociative Arrays (a.k.a Object)

Indexed Arrays (a.k.a Array)

08-26 04:58