diff options
Diffstat (limited to 'swat/apps/qooxdoo-examples/performance/StringConcat_1.html')
-rw-r--r-- | swat/apps/qooxdoo-examples/performance/StringConcat_1.html | 95 |
1 files changed, 95 insertions, 0 deletions
diff --git a/swat/apps/qooxdoo-examples/performance/StringConcat_1.html b/swat/apps/qooxdoo-examples/performance/StringConcat_1.html new file mode 100644 index 0000000000..f0d1ec901d --- /dev/null +++ b/swat/apps/qooxdoo-examples/performance/StringConcat_1.html @@ -0,0 +1,95 @@ +<html> +<head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> + <title>qooxdoo » Demo</title> + <link type="text/css" rel="stylesheet" href="../../resource/css/layout.css"/> + <!--[if IE]> + <link type="text/css" rel="stylesheet" href="../../resource/css/layout_ie.css"/> + <![endif]--> + <script type="text/javascript" src="../../script/qx.js"></script> +</head> +<body> + <script type="text/javascript" src="../../script/layout.js"></script> + + <div id="demoDescription"> + <p>Tests for String Performance. Using new String instances for concat.</p> + <ol> + <li>Operator +=</li> + <li>Operators = and +</li> + <li>Concat function</li> + <li>Array Push</li> + <li>Array Index</li> + <li>StringBuilder Object</li> + </ol> + </div> + + <script type="text/javascript"> + qx.core.Init.getInstance().defineMain(function() + { + function StringConcatShort(vLoops) + { + var s = ""; + + for (var i=0; i<vLoops; i++) { + s += "a"; + }; + }; + + function StringConcatShortAlt(vLoops) + { + var s = ""; + + for (var i=0; i<vLoops; i++) { + s = s + "a"; + }; + }; + + function StringConcatMethod(vLoops) + { + var s = ""; + + for (var i=0; i<vLoops; i++) { + s=s.concat("a"); + }; + }; + + function StringConcatArrayPush(vLoops) + { + var s = []; + + for (var i=0; i<vLoops; i++) { + s.push("a"); + }; + + s = s.join(""); + }; + + function StringConcatArrayAdd(vLoops) + { + var s = []; + + for (var i=0; i<vLoops; i++) { + s[s.length] = "a"; + }; + + s = s.join(""); + }; + + function StringConcatStringBuilder(vLoops) + { + var s = new qx.type.StringBuilder; + + for (var i=0; i<vLoops; i++) { + s.add("a"); + }; + + s = s.get(); + }; + + new qx.dev.TimeTracker(StringConcatShort, StringConcatShortAlt, + StringConcatMethod, StringConcatArrayPush, StringConcatArrayAdd, + StringConcatStringBuilder); + }); + </script> +</body> +</html> |