forked from: flash on 2013-11-30

by and forked from flash on 2013-11-30 (diff: 55)
♥0 | Line 106 | Modified 2013-11-30 02:52:17 | MIT License
play

ActionScript3 source code

/**
 * Copyright and ( http://wonderfl.net/user/and )
 * MIT License ( http://www.opensource.org/licenses/mit-license.php )
 * Downloaded from: http://wonderfl.net/c/pDEQ
 */

package
{
    import flash.text.TextField;
    import flash.display.Sprite;
    import flash.events.MouseEvent;
    import flash.utils.setTimeout;
    import flash.utils.getTimer;
    
    public class FlashTest extends Sprite
    {
        
        private const ARRAY_LENGTH:int = 3;//10000;
        private var txt:TextField;
        private var num:int;
        private var numI:int;        
        
        public function FlashTest()
        {
            // write as3 code here..
            init();
        }
        
        private function init():void
        {
            num = 1;
            numI = 4;
            
            var s:Sprite = new Sprite();
            addChild(s);
            
            s.graphics.beginFill(0);
            s.graphics.drawCircle(20,20,10);
            s.graphics.endFill();             
            
            txt = new TextField();
            txt.y = 30;
            txt.width = 400;
            txt.height = 300;
            addChild(txt);
            
            s.addEventListener(MouseEvent.CLICK, onClick);
        }
        
        private function onClick(event:MouseEvent):void
        {
            txt.appendText(".");
            setTimeout(this["test" + num], 500);
            
            num++;
            if (num > numI) num = 1;
        }
        
        private function test1():void
        {
            var map:Array = [];
            var line:Array = [];
            
            // засекаем время
            var t:int = getTimer();
            
            /* НАЧАЛО ТЕСТА */
            for (var i:int = 0; i < ARRAY_LENGTH; i++)
                line[i] = 0;
            for (i = 0; i < ARRAY_LENGTH; i++)
                map[i] = line.slice();
            /* КОНЕЦ ТЕСТА */
            
            t = getTimer() - t;
            txt.appendText("Test1 (Zebestov): " + t + "\n");
            txt.appendText(map.toString()+ "\n");            
        }
        
        private function test2():void
        {
            var a2d_len:int = ARRAY_LENGTH;
            var a2d:Array = new Array(a2d_len);
            
            //  засекаем время
            var t:int = getTimer();
            
            /* НАЧАЛО ТЕСТА */
            for (var i:int = 0; i < a2d_len; i++)
            {
                a2d[i] = new Array(a2d_len);
                for (var k:int = 0; k < a2d_len; k++)
                {
                    a2d[i][k] = 0;
                }
            }
            /* КОНЕЦ ТЕСТА */
            
            t = getTimer() - t;
            txt.appendText("Test2 (TheRabbit): " + t + "\n");
            txt.appendText(a2d.toString()+ "\n");            
        }
        
        private function test3():void
        {
            var map:Array = [];
            
            //  засекаем время
            var t:int = getTimer();
            
            /* НАЧАЛО ТЕСТА */
            for (var i:int = 0; i < ARRAY_LENGTH; ++i)
            {
                var temp:Array = [];
                for (var j:int = 0; j < ARRAY_LENGTH; ++j)
                    temp[j] = 0;
                map[i] = temp;
            }
            /* КОНЕЦ ТЕСТА */
            
            t = getTimer() - t;
            txt.appendText("Test3 (wizard оптимизированный): " + t + "\n");
            txt.appendText(map.toString()+ "\n");            
        }
        
private function test4():void
{
   var a2d_len : int = ARRAY_LENGTH;
   var a2d : Array = new Array(a2d_len);
   var k : int = 0;
   var f : int = 0;
   //  засекаем время
   var t:int = getTimer();

   /* НАЧАЛО ТЕСТА */
  
  do {
   a2d[k] = new Array(a2d_len);
   
   do {
    a2d[k][f] = 0;
    f++;
   } while ( f < a2d_len );
   
   
   ++k;
   
   
   
   
  }while ( k < a2d_len);
  
 
  /* КОНЕЦ ТЕСТА */

   t = getTimer() - t;
   txt.appendText("Test4 (TheRabbit): " + t + "\n");
   txt.appendText(a2d.toString()+ "\n");            
}        
    }
}