<html>
<head>
<title></title>
<script type="text/javascript">
function StringBuffer(){
this.strings = new Array();
}
StringBuffer.prototype.append = function(str){
this.strings.push(str);
}
StringBuffer.prototype.toString = function(){
return this.strings.join("");
}
var d1 = new Date();
var str = "";
for(var i=0;i<100000;i++){
str += "text";
}
var d2 = new Date();
document.write("cost1: "+(d2.getTime()-d1.getTime())+" millisecondes");
var buf = new StringBuffer();
var d3 = new Date();
for(var i=0;i<100000;i++){
buf.append("text");
}
var resultStr = buf.toString();
var d4 = new Date();
document.write("<br/>cost2: "+(d4.getTime()-d3.getTime())+" millisecondes");
</script>
</head>
<body>
</body>
</html>
这段代码执行后,与书上说的采用用“+”连接会效率比较低,耗资源,采用Array.join("")方式效率会比前者高50%--60%,但我试了以后发现不是那样,是哪儿的问题呢,请不吝赐教!
本文通过实际代码测试了两种不同的字符串拼接方法:使用“+”操作符与Array的join方法,并对比了它们的执行效率。
1991

被折叠的 条评论
为什么被折叠?



