다음과 같은 중복 항목이 포함된 문자열 배열이 있다고 가정해 보겠습니다.
const arr = ['blue', 'blue', 'green', 'blue', 'yellow', 'yellow', 'green'];
그러한 배열을 취하는 JavaScript 함수를 작성해야 합니다. 함수는 모든 중복 항목을 서로 병합해야 합니다.
따라서 위의 입력에 대한 출력은 다음과 같아야 합니다. -
const output = ['blueblue', 'green', 'blue', 'yellowyellow', 'green'];
예시
이에 대한 코드는 -
const arr = ['blue', 'blue', 'green', 'blue', 'yellow', 'yellow', 'green']; const combineDuplicate = (arr = []) => { let prev = null; const groups = arr.reduce((acc, value) => { if (prev === value) { acc[acc.length - 1] += value; } else { prev = value acc.push(value) } return acc; }, []) return groups; }; console.log(combineDuplicate(arr));
출력
콘솔의 출력은 -
[ 'blueblue', 'green', 'blue', 'yellowyellow', 'green' ]