Сейчас мы с вами будем находить пересечение массивов, то есть их общие элементы. При этом у нас будет не два массива, а любое количество! Для решения задачи применим несколько фишек ES6.
Исходники кода
/*
function getInt(arr1, arr2) {
var result = [];
for (var i = 0; i < arr1.length; i++) {
if (inArray(arr2, arr1[i])) {
result.push(arr1[i]);
}
}
return result;
}
function inArray(arr, elem) {
if (arr.indexOf(elem) === -1) {
return false;
} else {
return true;
}
}
*/
function getInt(...arrs) {
let result = [];
let arr0 = arrs.shift();
for (let elem of arr0) {
if(inArrays(arrs, elem)) {
result.push(elem);
}
}
return result;
}
function inArrays(arrs, elem) {
for (let arr of arrs) {
if (!inArray(arr, elem)) {
return false;
}
}
return true;
}
function inArray(arr, elem) {
return arr.find(e => e === elem);
}
console.log(getInt([1, 2, 3], [2, 3, 4, 5], [2, 3, 4, 6]));