オブジェクト作成の効率問題
3148 ワード
まず、オブジェクトの作成方法を紹介します.
1.new作成の方法
2.plin object作成の方法
3.new Object作成の方法
この3つの方法の作成効率はどうなりますか?
実験をしましょう.400万個のオブジェクトを作成して、作成時間をテストします.
テストブラウザ firefox 3.6.3
OS Kubuntu 9.04
1.newの作成方法をテストします.
このテストの結果は
2.テストplin object
このテストの結果
3.試験new Object
このテストの結果は
上記の実験結果を結び付けて、一応結論を下すことができます.
plinオブジェクト作成の効率は最高であり得る.
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オブジェクト作成の効率は最高であり得る.