http://my.oschina.net/ZaneYoung/blog/389873
结论:内置方法是最快的.
//构造一个数组
var arr=[];
for(var i=0;i<=1000000;i++){
arr.push('abcdefghigk'+i);
}
var v='abcdefghigk1000000';//需要比较的值就是最后一个
console.log('for in ');//for in方式查询
console.time('arr');
var find =false;
for(var i in arr){
if(arr[i]===v){
find=true;
break;
}
}
console.log(find);
console.timeEnd('arr');
console.log('for i++');//for i++方式查询
console.time('arr');
var find =false;
for(var i=0,len=arr.length;i<len;i++){
if(arr[i]===v){
find=true;
break;
}
}
console.log(find);
console.timeEnd('arr');
console.log('string');//join方式查询
console.time('arr');
console.log((','+arr.join(',')+',').indexOf(','+v+','));
console.timeEnd('arr');
测试结果:
for in
VM236:17 true
VM236:18 arr: 1153.680ms
VM236:19 for i++
VM236:28 true
VM236:29 arr: 1246.048ms
VM236:30 string
VM236:32 17888890
VM236:33 arr: 149.924ms
分享到:
相关推荐
准备下面试,开始回顾复习JavaScript相关的知识,昨天下午想到了数组去重的相关方法,干脆整理出几篇JavaScript算法文章,以备后用,此系列文章不定篇数,不定时间,想到哪写到哪,不保证正确性,不保证高效率,只是...
主要介绍了JS常用的几种数组遍历方式以及性能分析对比,结合实例形式详细分析了javascript针对数组遍历的几种常见使用方法及执行效率对比,具有一定参考借鉴价值,需要的朋友可以参考下
从“译言”上的一篇文章据悉各浏览器 Javascript 的对比。我个人作为一名“准”的 Javascript 开发者,对此事自然比较的关注。SunSpider 的测试面我还是保持对其信任的态度的,正如原文所说的“它是一组被精心...
15.9 userData与cookie的对比 15.10 userData示例--一个利用userData实现客户端保存表单数据的例子 15.11 总结 第四部分 数据交互 第16章 同步和异步 16.1 什么是同步和异步 16.2 超时设定和...
然而遍历却不是一件简单的事, 优秀的程序员知道怎么去选择合适的遍历方法, 优化遍历效率. 本篇将带你走进JavaScript遍历的世界, 享受分析JS循环的快感. 本篇所有代码都可以直接运行, 希望您通读本篇后, 不止是浏览,...
比如写脚本控件时控制整个控件的外观的HTML标签输出,比如AJAX里得到服务器端的回传值后动态分析创建HTML标签时,不过这里我就不讨论拼接字符串的具体应用了,我只是想在这里讨论一下拼接的效率。 字符串的拼接在...
今天针对不同的数组判定方式在chrome上做了一个效率的对比,结果如下: 其代码如下: var ret; var o = [1,2,3]; var toStr = {}.toString; var array = {}; array[[object Array]] = array; console.log...
Highstock 的数据是 JavaScript 数组或对象,这些数据可以是本地的配置对象,独立的数据文件(JSON、CVS)甚至是不同的网站上定义。另外,这些数据可以用任何形式处理好并加载到 Highstock 中。
Highstock 的数据是 JavaScript 数组或对象,这些数据可以是本地的配置对象,独立的数据文件(JSON、CVS)甚至是不同的网站上定义。另外,这些数据可以用任何形式处理好并加载到 Highstock 中。
选择器速度提升 选择器的速度大幅度提高了,下表为jQuery1.1.2和1.1.3的选择器速度对比,提高了8倍多 Browser jQuery 1.1.2 jQuery 1.1.3 % Improvement IE 6 4890ms 661ms 740% Firefox 2 5629ms 567...
-js ---javascript脚本目录 -|jquery.js ---jquery脚本文件 -|main.js ---主程序脚本 |memcache.class.php ---memcache数据库缓存加速类 |next_run.php ---暂无具体功能 -r ---URL重定向目录 -|httpd.ini ---...
关于性能:通过与主流模板引擎Freemarker,Velocity以及JSP对比,Beetl均远高于前面三个,这是因为宏观上,通过了优化的渲染引擎,IO的二进制输出,字节码属性访问增强,微观上,通过一维数组保存上下文,合并静态...