分别测试 +=,concat,以及使用array 的join方式,最后在IE6,firefox3.0,safari,chorme发现通过join的方式最快,其次是 +=,最慢的是concat方式。啥也别说了,直接上代码
重要提示,IE6中可能会把浏览器卡死,如果要测试,请把initData中的100000修改一下,似乎1000就可以看到效果了!
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>js</title>
<script>
var data = initData();
function initData() {
var data = [];
for (var i = 0; i++ < 100000;) {
data.push(randStr());
}
return data;
}
function randStr() {
var strs = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz';
var result = '';
var len = 3 + Math.round(22 * Math.random()); //随即生成一个3-25个字符组成的字符串
for (var i = 0; i++ < len;) {
result += strs[Math.round(52 * Math.random())];
}
return result;
}
function t1() {
var str = '';
var last = (new Date()).getTime();
for (var i = 0, d; d = data[i++];) {
str += d;
}
$('t1').value = (new Date()).getTime() - last;
return str;
}
function t2() {
var arr = [];
var last = (new Date()).getTime();
for (var i = 0, d; d = data[i++];) {
arr.push(d);
}
$('t2').value = (new Date()).getTime() - last;
return arr.join('');
}
function t3() {
var str = '';
var last = (new Date()).getTime();
for (var i = 0, d; d = data[i++];) {
str = str.concat(d);
}
$('t3').value = (new Date()).getTime() - last;
return str;
}
function $() {
return document.getElementById(arguments[0]);
}
</script>
</head>
<body>
<div style="width:400px;margin:40px auto;">
用时:<input type="text" name="t1" value="" id="t1" readonly/>毫秒
<input type="button" name="b1" value=" + 连接" onclick="t1()"/>
<br />
用时:<input type="text" name="t2" value="" id="t2" readonly/>毫秒
<input type="button" name="b2" value="join 连接" onclick="t2()"/>
<br />
用时:<input type="text" name="t3" value="" id="t3" readonly/>毫秒
<input type="button" name="b3" value="concact 连接" onclick="t3()"/>
<br />
</div>
</body>
</html>
分享到:
相关推荐
- **配置文件(Configuration Files)**:包含应用的全局设置,如数据库连接字符串,MVC框架的特定配置等。 通过这个实训例子,你可以深入理解MVC模式的工作流程,如何组织代码,以及如何在实际项目中运用MVC模式来...
7. **数据库部署**:根据应用程序需求,可能需要在目标服务器上创建数据库,导入数据,并更新连接字符串。 8. **运行和监控**:启动应用程序,进行最后的测试,确保在生产环境中运行正常,并持续监控其性能和稳定性...
通过使用`map`函数,我们能够将数组中的每个元素转换为对应的HTML字符串,然后再通过`join`函数将这些字符串连接起来形成完整的HTML列表。 #### 结论 通过采用函数式编程的思维和技术,JavaScript开发者可以在编写...
2. **Web.Config** - 这是ASP.NET应用程序的配置文件,其中可能包含了Fckeditor的配置设置,如安全策略、数据库连接字符串或者Fckeditor的特定配置项。 3. **Default.aspx.cs** - 这是Default.aspx页面对应的服务器...
3. HTML辅助方法:在ASP.NET MVC中,辅助方法是用于生成HTML元素的静态方法,它们通常定义在System.Web.Mvc.Html命名空间下,帮助开发者避免直接操作字符串来构建HTML。 4. 数据绑定:MvcJqGrid Helper会结合MVC的...
在Java中,可以使用Jackson、Gson等库将Java对象转换为JSON字符串。在前端,JavaScript可以通过Ajax发送JSON请求并处理响应的JSON数据。 7. **前端页面展示** 使用HTML、CSS和JavaScript构建用户界面。收到服务器...
此外,EdgeDriver也有特定的命令行参数,可以用来配置如禁用JavaScript、设置用户代理字符串等高级选项,这些可以根据具体测试需求进行调整。 总的来说,MicrosoftEdgeDriver是自动化测试过程中不可或缺的一部分,...
当一个正则表达式成功地和目标字符串相匹配时,可以从目标串中抽出和括号中的子模式相匹配 的部分.例如,假定我们正在检索的模式是一个或多个字母后面跟随一位或多位数字,那么我们可以使用模式 / [a-z] + \ d+/.但是...
2. **模板字符串**:将模板字符串(` `` )转换为字符串连接操作,便于老版本浏览器理解。 3. **解构赋值**:将对象和数组的解构赋值转换为常规赋值语句。 4. **类与继承**:将ES6的class和extends关键字转换为基于...
当我们在测试中使用Enzyme的API创建了组件的表示后,这个序列化器会将它转化为适合快照格式的字符串。这样,我们就可以在快照测试中使用Enzyme的优势,如精确地选择和操作组件树,同时享受到Jest快照测试的便利性。 ...
实例115 判断字符串中是否存在指定子串 146 2.9 正则表达式 147 实例116 验证电话号码的格式是否正确 147 实例117 验证Email地址格式是否正确 148 实例118 验证IP地址是否有效 149 实例119 统计关键字的查询结果 150...
实例115 判断字符串中是否存在指定子串 146 2.9 正则表达式 147 实例116 验证电话号码的格式是否正确 147 实例117 验证Email地址格式是否正确 148 实例118 验证IP地址是否有效 149 实例119 统计关键字的查询结果 150...
`M_str_sqlcon`字符串变量则包含了数据库连接字符串,其中包括服务器名称、数据库名、用户名和密码。 设计一个人事管理系统,尤其是针对中小企业的办公自动化系统,涉及到多个方面的软件工程知识。首先,需求分析是...
- **连接字符串**:掌握字符串拼接的多种方式,提高代码的效率和可读性。 - **在字符串中查找子字符串和模式**:利用`indexOf()`, `lastIndexOf()`, `substring()`, `replace()`等方法进行子字符串搜索和替换。 - **...
4. **多语言和字符集支持**:对于支持多种语言的键盘,测试页会包含各种语言的测试字符串,以确保每个语言的字符集都能正确处理。JavaScript代码会切换语言环境并验证键盘的响应。 5. **性能测试**:除了功能测试,...
例如,可以利用JavaScript的模运算和字符串连接来简化代码: ```javascript for (let i = 1; i ; i++) { console.log( i % 3 === 0 ? 'Fizz' : '', i % 5 === 0 ? 'Buzz' : '', i % 3 !== 0 && i % 5 !== 0 ? i...
通过`subprocess`模块的`Popen`函数,我们可以调用系统命令,读取输出,检查"Reply from"或"time out"等字符串来判断网络状态。这展示了Python在系统管理、自动化任务方面的实用性。 【快速入门Python】 学习Python...
在PHP编程中,分割字符串是一项常见的任务,特别是在处理用户输入或者...以上内容旨在帮助开发者更好地理解和应用PHP中的字符串处理技术,特别是在处理textarea内容时,选择合适的函数可以显著提高程序的效率和可靠性。
5. **resources** - 存放非Java代码的资源文件,比如配置文件(如Spring的bean定义XML)、数据库连接字符串、本地化文件等。 要创建一个SpringMVC的"Hello, World!"示例,我们需要以下步骤: 1. **配置Web.xml** -...