![](https://i-blog.csdnimg.cn/blog_migrate/49e20912d1396c052d2fa00ddb16052e.png)
完整代码
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>输出三个数组里都有的数字</title>
</head>
<body>
<script>
const arr1 = [1, 2, 3, 4, 4, 10, 5]
const arr2 = [1, 1, 1, 4, 5, 10]
const arr3 = [4, 10, 12, 5]
function diffArray(arr1, arr2, arr3) {
let allArr = [arr1, arr2, arr3] //把所要查询的数组都装进一个大数组
let resArr = allArr[0] //声明一个结果数组, 初始值为大数组里第一个小数组
allArr.map(item => { //遍历大数组里的每一项
let both = [] //声明一个空数组, 用来存储每一个小数组和结果数组 相同的项
item.map(val => { //遍历小数组里的每一项
if (resArr.includes(val)) { //如果结果数组里 包含 小数组里的某一项,
both.push(val) //则将这个相同项放入both里
}
})
resArr = both //使结果数组和both数组相同,,,,下一次遍历,将使用这个数组进行查询相同项
})
return resArr //返回结果
}
console.log(diffArray(arr1, arr2, arr3))
// 输出 [4, 10, 5]
</script>
</body>
</html>