优化Javascript数据遍历(未测试)
来源:互联网 发布:tv破解版软件 编辑:程序博客网 时间:2024/06/05 19:49
问题
M是一个对象的集合,没个对象拥有唯一的字符串类型的Id
N是Id的集合。
从M中过滤掉Id不在N中的对象。
假如M有50w个数据,N中可能是0~50w任意的数据。
方案1
使用数组保存Id的集合。
这样就有两种方式遍历
1.1
N = [id, ...];
for(var m in M)
for(var n in N){
.....
}
1.2
for(var m in M)
if(N.indexOf(m.id) > -1){
}
方案2
使用“dict/map”来保存Id的集合
N = {{id:0}, ....};
2.1
//遍历
for( var m in M)
if(n[m.id] !== undefined){
....
}
结论
dict与array PK,结果显而易见,速度2.1 > 1.2 > 1.1。
0 0
- 优化Javascript数据遍历(未测试)
- 优化Javascript数据遍历
- GO性能测试:未进行任何优化
- JavaScript浮动广告窗口实例(未测试)
- JavaScript判断浏览器版本(未测试)
- JavaScript合并两个Json对象(未测试)
- JavaScript常用方法函数收集(未测试)
- Javascript计时器的实现(未测试)
- JavaScript实现图片轮播(未测试)
- flex优化(3)数据遍历
- javascript遍历简单json数据
- 利用javascript遍历JSON数据
- java数据列表 分页对象(未测试)
- gpio驱动重构版,未优化,附上测试demo
- JavaScript性能优化-数据存取
- javascript异步执行的一些例子(未测试)
- JavaScript异步拖拽上传文件(未测试)
- JavaScript验证手机号码代码简单代码实例(未测试)
- CSS 滤镜 -webkit-filter 的介绍和使用
- linux 操作系统中rm删除命令的使用
- JQuery选择器
- 软件开发工程师(JAVA)笔试题A
- 1047. 编程团体赛(20)-PAT乙级真题
- 优化Javascript数据遍历(未测试)
- 数组中第K大的数
- Java8 特性—— default
- 使用semaphore实现生产者-消费者简单模型
- 签到题
- 1046. 划拳(15)-PAT乙级真题
- 几何知识-求任意多边形的面积。
- git
- 实现HTML编码和解码的JavaScript工具类(未测试)