js比较两个数组的内容是否相同并取出

和原数组对比 找不相同的值和不同的值?
今天有个需求就是对单据进行编辑可以添加参与人员和删除已有的参与人员, 现在有两个数组已有数组1,自己编辑数组2,找到参与的人员和删除的人员分别传给后端

方法一
//找出相同的内容
var arr1 = [1, 2, 3,];//原数组
var arr2 = [1, 2, 3, 4];//新数组
//首先循环新数组
 let list = arr2.filter(items => {
 	//循环拿到新数组的值 使用includes函数去原数组中查找
     if (!arr1.includes(items)){
     	//判断结构为true进入判断 并把内容返回给新数组
         return items;
     }
 })
 console.log(list);//[4]
 //找出相同的内容把不等于“!”去除即可
方法二
let arr1 = [],
    arr2 = [1, 2, 3, 4, 5],//原数组
    arr3 = [7, 5,8,9] //新数组
//同样是循环新数组,拿到每一个值
arr1 = arr3.filter(item => {
    let arrList = arr2.map(it => it)
    return !arrList.includes(item)
})
console.log(arr1)
includes()

方法用于判断字符串是否包含指定的子字符串如果找到返回true,否则返回false

  • 语法:
string.includes(searchvalue, start)
参数描述
searchvalue必须,要查找的字符串
start可选,设置那个位置开始查找
filter
  • filter创建一个新的数组,新数组的元素是通过检查指定数组中符合所有条件的元素
  • filter不会对空数组进行检测
  • filter不会改变原数组
arr.filter((item,index,arr)=>{
	return item >  num
},thisValue)
参数描述
item必须当前元素的值
index可选。当前元素的索引值
arr可选。当前元素属于的数组对象
thisValue可选。对象作为该执行回调时使用,传递给函数,用作 "this"的值。如果省略了 thisValue ,“this” 的值为 “undefined”
  • 0
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值