//两个数组对象中查看 其中一个数组对象是否包含另一个数组对象中的值
let arr = [
{key:1,val:"张胜男"},
{key:2,val:"王五"},
{key:3,val:"李四"},
{key:4,val:"刘超"},
{key:5,val:"赵四"}
]
let arr2 = [
{key:1,val:"张胜男"},
{key:2,val:"王五"},
{key:6,val:"666"},
{key:7,val:"777"},
{key:8,val:"888"},
{key:9,val:"999"},
]
//如果能找到就返回对应的下标,如果找不到,就返回-1
for(let i=0;i {return item.key === arr[i].key})
console.log(Index); // 0、1、-1、-1、-1
// 前两个数据的key值相同,打印出对应的下标 ,后面找不相同的key 输出-1
}
//两个数组对象中查看 其中一个数组对象是否包含另一个数组对象中的值
let arr = [
{key:1,val:"张胜男"},
{key:2,val:"王五"},
{key:3,val:"李四"},
{key:4,val:"刘超"},
{key:5,val:"赵四"}
]
let arr2 = [
{key:1,val:"张胜男"},
{key:2,val:"王五"},
{key:6,val:"666"},
{key:7,val:"777"},
{key:8,val:"888"},
{key:9,val:"999"},
]
for(let task of arr){
const itemJson = arr2.find((item)=>{return item.key === task.key});
console.log(itemJson)
//{key: 1, val: "张胜男"}
//{key: 2, val: "王五"}
// 3 undefined
// 如果有相同的值那么就返回对应的对象 如果没有则返回 undefined
}
上述两种方法都能找出 一个数组对象中是否包含另一个数组对象中的元素,两种方法返回的结果不同,一个是返回下标,另外返回对应的对象,在实际应用场景中可根据不同需要选择不同的使用方式。