还记得Flex/Flash的程式优化里面有指明flash自带的Math类本身就是AS实现的,所以处理速度很慢。
比如
abs(value:Number)
可以用
value < 0 ? -value : value
这样来代替。
也正是因为这样,我就想自己写个Math类MathUtil来取代Math里面的如abs(value:Number)这样的方法。

MathUtil.as

public static function abs(value:Number):Number
{
    return value < 0 ? -value : value;
}

但是测试下来发现自己的MathUtil类比原来的Math类速度慢了一倍之多,难道Math.abs在fp10里优化了?
结果如果直接采用value < 0 ? -value : value来取代MathUtil.abs(value:Number)的代码,速度就比Math.abs(value:Number)快得多。

因此结论得出是function的关系,如果code代码执行重新套用了一层function,那么运行的速度结果是慢得多。
所以这也说明在对性能及其严格的情况下,写代码的时候也尽量降低代码的层次嵌套关系。