JavaScript字符串拼接方法:
1. +号: var result = “hello” + ” ” + “world”;
2. 数组join方法:var arr = ["hello", " ", "world"]; arr.join(“”);
示例代码:
选取的数据为10000次连接相加,测试结果如下:
[table]
|浏览器|字条串+|字符串数组join|
|IE6|171毫秒|30毫秒|
|IE7|171毫秒|20毫秒|
|Chrome15|3毫秒|1毫秒|
|Firefox8|1毫秒|1毫秒|
|Opera11.52|3毫秒|3毫秒|
[/table]
现代的浏览器,通过+与通过join在IE上有比较大的不同,如果考虑的是主要为IE6和IE7等用户的话,数据量大,则优先考虑使用数组的join方法为好。
如果数据量小的话或者是数据较短,而语义上有连续的话,使用+为好,直接,并且容易看懂。
1. +号: var result = “hello” + ” ” + “world”;
2. 数组join方法:var arr = ["hello", " ", "world"]; arr.join(“”);
示例代码:
<html>
<head>
<script type="text/javascript">
function main() {
var str = "Hello World";
var tab = "";
document.getElementById("time1").innerHTML = new Date().getTime();
for (var i = 0; i < 10000; i++) {
tab += str + i;
}
document.getElementById("time2").innerHTML = new Date().getTime();
var tab2 = [];
document.getElementById("time3").innerHTML = new Date().getTime();
for (var i = 0; i < 10000; i++) {
tab2.push(str + i);
}
document.getElementById("time4").innerHTML = new Date().getTime();
}
</script>
</head>
<body onload="main();">
<div id="time1"></div>
<div id="time2"></div>
<div id="time3"></div>
<div id="time4"></div>
</body>
</html>
选取的数据为10000次连接相加,测试结果如下:
[table]
|浏览器|字条串+|字符串数组join|
|IE6|171毫秒|30毫秒|
|IE7|171毫秒|20毫秒|
|Chrome15|3毫秒|1毫秒|
|Firefox8|1毫秒|1毫秒|
|Opera11.52|3毫秒|3毫秒|
[/table]
现代的浏览器,通过+与通过join在IE上有比较大的不同,如果考虑的是主要为IE6和IE7等用户的话,数据量大,则优先考虑使用数组的join方法为好。
如果数据量小的话或者是数据较短,而语义上有连续的话,使用+为好,直接,并且容易看懂。