オブジェクト作成の効率問題


まず、オブジェクトの作成方法を紹介します.
1.new作成の方法
var stdClass = function(){};
var obj = new stdClass();
 
2.plin object作成の方法
var obj = {};
 
3.new Object作成の方法
var obj = new Object();
 
この3つの方法の作成効率はどうなりますか?
実験をしましょう.400万個のオブジェクトを作成して、作成時間をテストします.
 
テストブラウザ     firefox 3.6.3
OS                  Kubuntu 9.04
 
1.newの作成方法をテストします.
<html>
        <head></head>
        <body>
        </body>
        <script type="text/javascript">
                        var num = 40000000;
                        var stdClass = function(){};
                        var start = new Date().getTime();
                        for(var i = 0; i<num ; i++){
                                tmp = new stdClass();
                        }
                        var end = new Date().getTime();

                        document.write("create "+ num + "objects with 'new Object' costs " + (end -start) + "MS");
        </script>
</html>
 
このテストの結果は
create 40000000objects with 'new Object' costs 7748MS 
 
2.テストplin object
<html>
        <head></head>
        <body>
        </body>
        <script type="text/javascript">
                        var num = 40000000;
                        var start = new Date().getTime();
                        for(var i = 0; i<num ; i++){
                                tmp = {};
                        }
                        var end = new Date().getTime();

                        document.write("create "+ num + "objects with '{}' costs "+(end -start) + "MS");
        </script>
</html>
 
このテストの結果
create 40000000objects with '{}' costs 7197MS 
 
3.試験new Object
<html>
        <head></head>
        <body>
        </body>
        <script type="text/javascript">
                        var num = 40000000;
                        var start = new Date().getTime();
                        for(var i = 0; i<num ; i++){
                                tmp = new Object();
                        }
                        var end = new Date().getTime();

                        document.write("create "+ num + "objects with 'new Object()' costs "+(end -start) + "MS");
        </script>
</html>
 
このテストの結果は
create 40000000objects with 'new Object()' costs 9299MS 
 
 
上記の実験結果を結び付けて、一応結論を下すことができます.
plinオブジェクト作成の効率は最高であり得る.