循环判断数组里的值是否存在另一个数组对象里,并添加到新数组里

介绍

判断当前数组里的值是否在另一个数组对象里,这里需要用到 forEach()方法 及 includes() ,indexOf()等方法;

  1. forEach(): 方法用于调用数组的每个元素 并将元素传递给回调函数 没有返回值 原数组不变
  2. includes()方法主要用于查询字符串,判断一个字符串是否包含另外一个字符串,其返回值是如果包含该字符串则返回 true 否则返回 false。
  3. indexOf(): 方法可返回某个指定的字符串值在字符串中首次出现的位置。如果要检索的字符串值没有出现,则该方法返回 -1

代码

  var arr1 = [{name: 'luna',age: '12'},{name: 'linda',age: '16'},{name: 'lucky',age: '13'}];
  var arr2 = [12,16,15];
  var arr3 = [];
  var strArr = ['luna','lisa','lucky']
  var arr4 = []
  arr1.forEach((item) => {
    if(strArr.indexOf(item.name) != -1) {
      arr3.push(item);
    }
  })
  console.log(arr3,'arr3.............')

  const newArr = [];
  arr1.forEach((item) => {
    if(arr2.includes(parseInt(item.age))) {
      arr4.push(item);
    }
  })
  console.log(arr4,'arr4..........')

重组效果如下:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值