高效率去掉js数组中重复项
来源:互联网 发布:数据库备份策略 编辑:程序博客网 时间:2024/06/05 21:15
http://www.cnblogs.com/sosoft/archive/2013/12/08/3463830.html
Array类型并没有提供去重复的方法,如果要把数组的重复元素干掉,那得自己想办法:
1 function unique(arr) { 2 var result = [], isRepeated; 3 for (var i = 0, len = arr.length; i < len; i++) { 4 isRepeated = false; 5 for (var j = 0, len = result.length; j < len; j++) { 6 if (arr[i] == result[j]) { 7 isRepeated = true; 8 break; 9 }10 }11 if (!isRepeated) {12 result.push(arr[i]);13 }14 }15 return result;16 }
总体思路是把数组元素逐个搬运到另一个数组,搬运的过程中检查这个元素是否有重复,如果有就直接丢掉。从嵌套循环就可以看出,这种方法效率极低。我们可以 用一个hashtable的结构记录已有的元素,这样就可以避免内层循环。恰好,在Javascript中实现hashtable是极为简单的,改进如 下:
function unique(arr) { var result = [], hash = {}; for (var i = 0, elem; (elem = arr[i]) != null; i++) { if (!hash[elem]) { result.push(elem); hash[elem] = true; } } return result;//http://www.cnblogs.com/sosoft/}
0 0
- 高效率去掉js数组中重复项
- 高效率去掉js数组中重复项
- 高效率去掉js数组中重复项
- 高效率去掉js数组中重复项
- 高效率去掉js数组中重复项
- 高效率去掉js数组中重复项
- 高效率去掉js数组中重复项
- JS数组高效率去除重复
- 去掉JS数组中重复的元素
- 去掉JS数组中重复的元素
- JS 去掉数组重复值
- js 去掉重复的 数组
- JS数组去掉重复元素
- 去除数组中重复的元素,高效率
- JavaScript中数组去掉重复的项
- 去掉数组中重复项之越过重复值法
- js中去掉重复键值
- js 字符串类型的数组去掉重复项
- 二级指针
- Spring AOP Schema aop:config
- hdu 2187 地震灾区买米问题
- [Leetcode] Maximum |Minimum Depth of Binary Tree
- hdu 4932 Miaomiao's Geometry
- 高效率去掉js数组中重复项
- Mediator 中介者模式
- 目标检测的图像特征提取之(二)LBP特征
- 六旬老人100万存款理财 简单来获稳健收益 100万 理财 存款
- CentOS下搭建NFS服务器总结
- javascript正则表达式
- hduoj1398!【母函数】
- free命令详解
- ios apple企业账号申请流程