우리는 리터럴 배열을 원하는 만큼 취하는 JavaScript 함수를 작성해야 합니다. 함수는 대시('-')로 구분하는 배열에서 모든 요소의 데카르트 곱 배열을 계산하고 반환해야 합니다.
예시
이에 대한 코드는 -
const arr1= [ 'a', 'b', 'c', 'd' ]; const arr2= [ '1', '2', '3' ]; const arr3= [ 'x', 'y', ]; const dotCartesian = (...arrs) => { const res = arrs.reduce((acc, val) => { let ret = []; acc.map(obj => { val.map(obj_1 => { ret.push(obj + '−' + obj_1) }); }); return ret; }); return res; }; console.log(dotCartesian(arr1, arr2, arr3));
출력
콘솔의 출력은 -
[ 'a−1−x', 'a−1−y', 'a−2−x', 'a−2−y', 'a−3−x', 'a−3−y', 'b−1−x', 'b−1−y', 'b−2−x', 'b−2−y', 'b−3−x', 'b−3−y', 'c−1−x', 'c−1−y', 'c−2−x', 'c−2−y', 'c−3−x', 'c−3−y', 'd−1−x', 'd−1−y', 'd−2−x', 'd−2−y', 'd−3−x', 'd−3−y' ]