0
var a:Object =({label:"2008",n:8560,i:15909});
var b:Object ={(label:"2009",n:8146,i:14197});
可以說我在列表組件中有五個對象與此類似。是否有可能打印出具有最低值n的項目的標籤的功能?我需要做些什麼才能做到這一點?AS3將最低值打印到動態文本字段
var a:Object =({label:"2008",n:8560,i:15909});
var b:Object ={(label:"2009",n:8146,i:14197});
可以說我在列表組件中有五個對象與此類似。是否有可能打印出具有最低值n的項目的標籤的功能?我需要做些什麼才能做到這一點?AS3將最低值打印到動態文本字段
排序使用Array.sortOn()你想第一場(N在這種情況下),然後訪問和打印:
var arrayToSort:Array = [{label:"2008",n:8560,i:15909},{label:"2009",n:8146,i:14197}];
var sortedArray = arrayToSort.sortOn ("n" , Array.NUMERIC);
trace(sortedArray[0].label);
public function findMax(o:Object):String {
var lowest:Number = Number.MAX_VALUE;
var lowestLabel:String;
for (var label:String in o) {
var val:Number = o[label];
if (val != null && val < lowest) {
lowest = val;
lowestLabel = label;
}
}
return lowestLabel;
}
我試過,但它不能正常工作。跟蹤顯示2008年,但2008年的n值超過2009年。 – elektroluse
ooopse,已更新,如果要訪問第一個元素,它應該數組數值(升序)。 Array.DESCENDING也沒有錯,只需選擇最後一個元素[數組長度-1]而不是0 –
感謝它現在完美的作品,但有一件事我不明白。爲什麼n在類型中作爲一個字符串sortOn? – elektroluse