Numbers 배열의 배열을 첫 번째 인수로, Numbers 배열을 두 번째 인수로 취하는 JavaScript 함수를 작성해야 합니다. 함수는 첫 번째 배열의 각 배열에서 하위 배열을 선택해야 합니다(두 번째 배열과 첫 번째 배열의 해당 배열 모두에 공통적인 항목을 포함하는 하위 배열).
예를 들어 -
입력이 -
인 경우예시
const arr1 = [ [1,2,5,6], [5,13,7,8], [9,11,13,15], [13,14,15,16], [1,9,11,12] ]; const arr2 = [9,11,13,15,1,2,5,6];
출력
콘솔의 출력은 -
const output = [ [1, 2, 5, 6], [5, 13], [9, 11, 13, 15], [13, 15], [1, 9, 11] ]
첫 번째 배열의 첫 번째 하위 배열과 두 번째 배열의 공통 요소가 출력 배열의 첫 번째 하위 배열을 형성합니다.
첫 번째 배열의 두 번째 하위 배열과 두 번째 배열 사이의 공통 요소는 출력 배열의 두 번째 하위 배열을 형성합니다. 등등.
예시
const arr1 = [ [1,2,5,6], [5,13,7,8], [9,11,13,15], [13,14,15,16], [1,9,11,12] ]; const arr2 = [9,11,13,15,1,2,5,6]; const findIntersection = (arr1 = [], arr2 = []) => { const regex = new RegExp('\\b(' + arr1.join('|') + ')\\b', 'g'); const res = []; arr2.forEach(arr => { let matches = arr.join(' ').match(regex); if (matches.length) { res.push(matches.map(Number)); }; }); return res; } console.log(findIntersection(arr2, arr1));
출력
콘솔의 출력은 -
[ [ 1, 2, 5, 6 ], [ 5, 13 ], [ 9, 11, 13, 15 ], [ 13, 15 ], [ 1, 9, 11 ] ]