In case Flash no longer exists; a copy of this site is included in the Flashpoint archive's "ultimate" collection.

Dead Code Preservation :: Archived AS3 works from wonderfl.net

forked from: forked from: flash on 2011-2-25

Get Adobe Flash player
by pleclech 01 Apr 2011
    Embed
/**
 * Copyright pleclech ( http://wonderfl.net/user/pleclech )
 * MIT License ( http://www.opensource.org/licenses/mit-license.php )
 * Downloaded from: http://wonderfl.net/c/xdqv
 */

// forked from pleclech's forked from: flash on 2011-2-25
// forked from pleclech's flash on 2011-2-25
package {
    import flash.utils.getTimer;
    import flash.display.Sprite;
    public class FlashTest extends Sprite {
        public function FlashTest() {
             if (stage) _init()
            else addEventListener(Event.ADDED_TO_STAGE, _init)
        }
        import flash.text.TextField;
        import flash.events.Event;

        private var tf:TextField=new TextField()
        private function trace(...args):void{
            tf.appendText(args.join(", ")+"\n")
        }
        private function _init(e:Event=null):void {
            removeEventListener(Event.ADDED_TO_STAGE, _init)
            addChild(tf)
            tf.autoSize="left"
            tf.background=true
            const loop:int=10000000
            test1(loop)
            test2(loop)
            test3(loop)
            test4(loop)
            test5(loop)
            test6(loop)
       }
       private function test1(loop:int):void{
           var t:int=getTimer()
           for (var i:int=0;i<loop;++i){
               var n:Number=Number(Math.random()<0.5)?-1.0:1.0
           }
           t=getTimer()-t
           trace("test1[Number(Math.random()<0.5)?-1.0:1.0]:     "+t)
       }
       private function test2(loop:int):void{
           var t:int=getTimer()
           for (var i:int=0;i<loop;++i){
               var n:Number=2.0*Number(Math.random()>=0.5)-1.0
           }
           t=getTimer()-t
           trace("test2[2.0*Number(Math.random()>=0.5)-1.0]:   "+t)
       }
       private function test3(loop:int):void{
           var t:int=getTimer()
           for (var i:int=0;i<loop;++i){
                var n:Number=(int(Math.random()>=0.5)<<1)-1.0
          }
           t=getTimer()-t
           trace("test3[(int(Math.random()>=0.5)<<1)-1.0]:         "+t)
       }
       private function test4(loop:int):void{
           var t:int=getTimer()
           for (var i:int=0;i<loop;++i){
                var n:Number=Math.round(Math.random())*2-1;
          }
           t=getTimer()-t
           trace("test4[Math.round(Math.random())*2-1]:            "+t)
       }
       private function test5(loop:int):void{
           var t:int=getTimer()
           for (var i:int=0;i<loop;++i) {
                var ii:int=int(Math.random()>=0.5)<<1
                ii--
          }
           t=getTimer()-t
           trace("test5[(int(Math.random()>=0.5)<<1)-1]:            "+t)
       }
       private function test6(loop:int):void{
           var t:int=getTimer()
           for (var i:int=0;i<loop;++i) {
                var n:int = ((Math.random()*4)&2)-1;
          }
           t=getTimer()-t
           trace("test6[((Math.random()*4)&2)-1;]:                       "+t)
       }
    }
}