介绍
判断当前数组里的值是否在另一个数组对象里,这里需要用到 forEach()
方法 及 includes()
,indexOf()
等方法;
forEach()
: 方法用于调用数组的每个元素 并将元素传递给回调函数 没有返回值 原数组不变includes()
方法主要用于查询字符串,判断一个字符串是否包含另外一个字符串,其返回值是如果包含该字符串则返回 true 否则返回 false。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..........')
重组效果如下: