欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

javascript 字符串連接的性能問(wèn)題(多瀏覽器)

 更新時(shí)間:2008年11月18日 11:20:54   作者:  
今天看了javascript 高級(jí)程序設(shè)計(jì) 談到了字符串連接的性能問(wèn)題
書(shū)中附帶的測(cè)試代碼如下 
復(fù)制代碼 代碼如下:

<html>
<head>
<title>Example</title>
</head>
<body>
<p><strong>Note:</strong> The latest versions of Firefox seem to have fixed the string concatenation problem. If you are using Firefox 1.0 or later, the string buffer may actually take longer than normal string concatenation.</p>
<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 < 10000; i++) {
str += "text";
}
var d2 = new Date();
document.write("Concatenation with plus: " + (d2.getTime() - d1.getTime()) + " milliseconds");
var buffer = new StringBuffer();
d1 = new Date();
for (var i=0; i < 10000; i++) {
buffer.append("text");
}
var result = buffer.toString();
d2 = new Date();
document.write("<br />Concatenation with StringBuffer: " + (d2.getTime() - d1.getTime()) + " milliseconds");
</script>

</body>
</html>


在 Firefox/3.0.3中執(zhí)行的結(jié)果如下:
Concatenation with plus: 5 milliseconds
Concatenation with StringBuffer: 10 milliseconds
在IE6中執(zhí)行結(jié)果如下:
Concatenation with plus: 234 milliseconds
Concatenation with StringBuffer: 62 milliseconds
1.兩種方式性能差別很大
2.看來(lái)IE6字符串連接處理能力比FF3很差呀
3.IE6和FF3兩種方式結(jié)果相反,看來(lái)以后寫(xiě)連接優(yōu)化還有注意瀏覽器呀

相關(guān)文章

最新評(píng)論