for..in performance test

by DaniilTutubalin
♥0 | Line 34 | Modified 2013-10-28 17:58:28 | MIT License
play

ActionScript3 source code

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

package {
    import flash.text.TextField;
    import flash.display.Sprite;
    import flash.utils.*; 
    
    public class FlashTest extends Sprite {
        
        private var tf:TextField;
        
        public function FlashTest() {
            // write as3 code here..
            tf = new TextField();
            
            tf.width = 600;
            tf.height = 600;
            
            addChild(tf);
            
            setTimeout(test, 2000);
        }
        private function test():void {
            var a:Array = [];
        
            for (var k:int=0; k<10000000; k++) {
                a[k] = i;
                
            }
        
            var t:int = getTimer();
        
            var s:int = 0;
            var l:int = a.length;
            for (var i:int=0; i<l; i++) {}
            tf.appendText("for (var i=0; i<l; i++)): "+(getTimer()-t)+" ms \n");
            
            t = getTimer();
            s = 0;
            for (var m:int=0; m<a.length; m++) {}
            tf.appendText("for (var i=0; i<a.length;i++)): "+(getTimer()-t)+" ms \n");
        
            t = getTimer();
            s = 0;
            for (var j:* in a) {}
            tf.appendText("for (i in a): "+(getTimer()-t)+" ms");
        
        }
    }
    
    

}