package { import flash.display.Sprite; import flash.text.*; import flash.utils.*; public class FlashTest extends Sprite { private var tf:TextField = new TextField(); public function FlashTest() { // write as3 code here.. addChild(tf); tf.autoSize = "left"; var str:String = ""; var i:Number = 0; var j:Number; var count:int = 2000000; var time:Number; var func1:Function = function(value:Number):Number{ return (value + value * value) / value; } time = Number(getTimer()); for( i=0; i < count; i++ ){ j = (i + i * i) / i; } str = "インライン: " + String(Number(getTimer())-time) + "\n"; time = Number(getTimer()); for( i=0; i < count; i++ ){ j = func(i); } str += "private関数: " + String(Number(getTimer())-time) + "\n"; time = Number(getTimer()); for( i=0; i < count; i++ ){ j = func1(i); } str += "関数: " + String(Number(getTimer())-time) + "\n"; tf.text = str; } private function func(value:Number):Number{ return (value + value * value) / value; } } } 関数のオーバーヘッドありすぎない?