
Код AS3:
package {
import flash.display.Sprite;
public class ForLoop extends Sprite {
private var _arr:Array = [12, 20, 25, 32, 42];
public function ForLoop() {
trace(getNearest(38));
}
private function getNearest(number:int):int {
var lastVal: int = _arr[0];
var result: int = lastVal;
var diff: int = 0;
_arr.filter( function(item:int, index:int, arr:Array):void {
if (item) {
diff = (item - number);
var curVal:int = diff < 0 ? -diff : diff; // быстрее, чем Math.abs()
if (curVal < lastVal) {
lastVal = curVal;
result = item;
}
}
}
);
return result;
}
}
}