几种情况下的数组内容输出
var aa:Array = [10,30,20,40,50];
trace (aa);//10,30,20,40,50
var bb:Array = ["b","c","e","a","d"];
trace (bb);//b,c,e,a,d
var cc:Array = ["不","月","啊","的","出"];
trace (cc);//不,月,啊,的,出
如果要输出时是按顺序排列输出的话怎么写呢?
想要的效果
aa(10,20,30,40,50) 按数字顺序排列输出
bb(a,b,c,d,e) 按字母顺序排列输出
cc(啊, 不, 出, 的, 月) 按拼音顺序排列输出
代码如下:
function clone (source:Object):* {
var myBA:ByteArray = new ByteArray();
myBA.writeObject (source);
myBA.position = 0;
var bb:Array = myBA.readObject();
return bb;
}
var aa:Array = new Array({a1:100, a2:"大盗二十八"},
{a1:200, a2:"0啊不大盗"},
{a1:300, a2:"啊不22大盗"});
var bb:Array = clone(aa);
for (var i:uint = 0; i<aa.length; i++) {
bb[i].a2 = toPinyin(aa[i].a2);
}
bb.sortOn ("a2");
bb = sortArr (bb,aa);
function sortArr (arr1:Array, arr2:Array):Array {
var arr3:Array = new Array();
for (var i:uint = 0; i < arr1.length; i++) {
for (var j:uint = 0; j < arr2.length; j++) {
if (arr1[i].a2 == toPinyin(arr2[j].a2)) {
arr3.push (arr2[j]);
}
}
}
return arr3;
}
如果有更好的写法,可以分享一下。
Word教程网 | Excel教程网 | Dreamweaver教程网 | Fireworks教程网 | PPT教程网 | FLASH教程网 | PS教程网 |
HTML教程网 | DIV CSS教程网 | FLASH AS教程网 | ACCESS教程网 | SQL SERVER教程网 | C语言教程网 | JAVASCRIPT教程网 |
ASP教程网 | ASP.NET教程网 | CorelDraw教程网 |