js数组去重(多种方法)
2024-10-20 09:28:46
// js数组去重
Array.prototype.fun1 = function(){
var arr = this,
result = [],
i,
len = arr.length;
for(i = 0;i<len;i++){
if(!(arr[i] in result)){
result.push(arr[i]);
}
}
return result;
};
Array.prototype.fun2 = function(){
var arr = this,
i,
j,
len = arr.length;
for(i = 0;i<len;i++){
for(j = i + 1;j<len;j++){
if(arr[i] === arr[j]){
arr.splice(j, 1);
len --;
j --;
}
}
}
return arr;
};
Array.prototype.fun3 = function(){
var arr = this,
i,
obj = {},
result = [],
len = arr.length;
for(i = 0;i<len;i++){
if(!obj[arr[i]]){
result.push(arr[i]);
obj[arr[i]] = 1;
}
}
return result;
};
Array.prototype.fun4 = function(){
//数组递归去重
};
Array.prototype.fun5 = function(){
// [...new Set()]
};
Array.prototype.fun6 = function(){
// map, filter
var arr = this,
obj = {},
result = [];
result = arr.filter((v, k)=>{ });
return result;
// arr.map(function(v, k){
// });
// return arr;
};
var arr1 = [1,2,3,2];
arr1.fun1();
最新文章
- 无聊的人用JS实现了一个简单的打地鼠游戏
- JS数组方法汇总 array数组元素的添加和删除
- Linux的phpstudy mysql登录
- NGUI之UILabel
- vs2010安装和使用
- 域控制器中的FSMO角色
- ios学习:页面跳转(present)
- 最全的C#图片处理帮助类ImageHelper
- Excel连接字符串(Oledb)
- fedora linux平台下搭建lighttpd+php+sqlite
- mysql中You can&#39;t specify target table for update in FROM clause
- Java 并发 线程的生命周期
- 为Android内核添加新驱动
- H5拖拽 构造拖拽及缩放 pdf展示
- 数据结构与算法(c++)——双缓存队列
- iptables四表五链及默认规则使用,
- XPATH语法(二)
- jenkins 修改工作目录
- 超星网站cc++
- mongo操作及相关资料