介绍js数组的一些基本操作,利用filter
、map
等删除两个数组中相同对象、删除指定对象的。
基础数据
let arr1 = [ {name:'张三',age:18}, {name:'李四',age:16}, {name:'王五',age:22}, ] let arr2 =[ {name:'张三',school:'北大'}, {name:'李四',school:'清华'}, ]
2个数组去重
方法一:
let newArr= arr1.filter((v) => arr2.every((val) => val.name != v.name) ) console.log('打印结果:', newArr)
方法二:
let newArr1 = arr2.map(item=>item.name) console.log('获取重复数据:',newArr1) let newArr2 = arr1.filter(item=>!newArr1.includes(item.name)) console.log('打印结果:', newArr2)
方法三:
let newArr = arr1.filter((item) => !arr2.some((ele) => ele.name === item.name)); console.log('打印结果:', newArr );
删除数组指定对象
基础数据
let arr = [ {name:'张三',age:18}, {name:'李四',age:16}, {name:'王五',age:18}, ]
方法一:
arr.splice( arr.indexOf(arr.find((e) => { return e.name=== "李四"; }) ), 1); console.log('打印结果:',arr)
方法二:
let index = -1; for(let i=0;i<arr.length;i++){ if(arr[i].name == '王五'){ index = i; } } if(index>-1){ arr.splice(index,1); } console.log('打印结果:',arr)
方法三:
arr.forEach((item, i) => { if (item.age === 18) { arr.splice(i, 1) } }) console.log('打印结果:',arr)
上面是“js数组基本操作(删除两个数组中相同对象、删除指定对象)”的全面内容,想了解更多关于 js 内容,请继续关注web建站教程。
当前网址:https://m.ipkd.cn/webs_2389.html
声明:本站提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请发送到邮箱:admin@ipkd.cn,我们会在看到邮件的第一时间内为您处理!