JS删除两个数组中相同的元素

携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第14天,点击查看活动详情

前言

在工作学习中,经常会遇到维护两个数组数据这样的情况。

最近在工作中总遇到这样的情况,我就优化总结了一下发现下面这种方法就挺好,简单简洁,逻辑清晰。

最后,总结分享给大家,希望可以帮助到大家,大家如果有更好的方法欢迎在评论区交流,谢谢!

删除两个数组中相同的元素

var newArr=arr1.filter(function(item) { return arr2.indexOf(item) == -1 });

image.png

filter

js数组的filter 方法,可以创建一个新数组。

新数组的值是:通过检查指定数组中符合条件的所有元素。

array.filter(function(currentValue,index,arr), thisValue)

filter 方法会接收一个函数,和一个可选的,"this" ;

接收的这个函数有三个参数currentValue, index, arr

其中currentValue是必传的参数, indexarr是可选的参数;

分别为当前元素的值 、当前元素的索引值 、当前元素属于的数组对象。

注意:  filter() 不会对空数组进行检测,filter() 不会改变原始数组。

indexOf

js数组的indexOf 方法,可返回数组中某个指定的元素位置。

indexOf 方法会将数组从头(或 start 处)到尾地检索,看它是否含有对应的元素。

如果找到一个 item,则返回 item 的第一次出现的位置。

如果在数组中没找到指定元素则返回 -1

array.indexOf(item,start)

indexOf 方法有两个参数itemstart

item 是必传参数,是要查找的元素。 start是可选的整数参数,表示数组开始检索的位置。

结语

本文到此结束

如果大家还有什么其他想法,欢迎在评论区交流!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

爱划水de鲸鱼哥~

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值