es6 数组去重
方法一:
var arr = [1, 2, 2, 3, 4, 5, 5, 6, 7, 7,8,8,0,8,6,3,4,56,2];
var arr2 = arr.filter((x, index,self)=>{
// self:表示该数组对象
// x: 表示当前对象
// index: 表示当前元素下标
return self.indexOf(x)===index
})
console.log(arr2); //[1, 2, 3, 4, 5, 6, 7, 8, 0, 56]
方法二:
var arr = [
{
'id':1,
'name':'fsdf'
},
{
'id':1,
'name':'fsdf'
},
{
'id':2,
'name':'fsdf'
},
{
'id':2,
'name':'fsdf'
},
{
'id':3,
'name':'fsdf'
},];
var arr2 = arr.filter((x, index,self)=>{
var arrids = []
arr.forEach((item,i) => {
arrids.push(item.id)
})
return arrids.indexOf(x.id) === index
})
console.log(arr2);
方法三:
var arr = [
{
'id':1,
'name':'fsdfwsd',
},
{
'id':1,
'name':'fsdfwsd',
},
{
'id':1,
'name':'ythrg'
},
{
'id':2,
'name':'trhwfre'
},
{
'id':2,
'name':'lokfjks'
},
{
'id':2,
'name':'trhwfre'
},
{
'id':3,
'name':'trewtw'
},];
var arr2 = arr.filter((x, index,self)=>{
var arrids = []
var arrnames = []
arr.forEach((item,i) => {
arrids.push(item.id)
arrnames.push(item.name)
})
var judgeOne = arrids.indexOf(x.id) === index
var judgeTwo = arrnames.indexOf(x.name) === index
return judgeOne || judgeTwo
})
console.log(arr2);
方法四
最新文章
- Theano conv2d的border_mode
- SSM——(二):easyUI的CRUD
- ubuntu网络设置
- sql server 2008 登录 4064 错误解决办法
- 2016 Multi-University Training Contest 5 ATM Mechine
- Precompile Prefix file(.pch文件)
- XAML系列学习
- tomcat 系统架构与设计模式 第二部分 设计模式 转
- IIS配置
- UFLDL课程学习(二)
- window环境下安装 pip 工具 【pip为Python的扩展管理工具】
- 由自动装箱和拆箱引发我看Integer源码
- 弹性布局EM的计算方法
- Java与C#的比较学习
- 期待微软平台即服务技术Service Fabric 开源
- Linux桌面环境GNOME实用技巧
- java-多线程(下)&;GUI
- maven eclipse 第3方包
- sql 查询每科的前三名
- 『TensorFlow』第七弹_保存&;载入会话_霸王回马