11/26 코딩테스트 기록

손정만·2022년 11월 28일
0

요구사항

재귀적으로 중첩된 배열에서 입력받은 값의 내부 배열까지 모두 포함한 횟수 검색
숫자, 문자 제한 없이 구분하여 검색

답안

/**
 * arr 배열의 중첩된 하위 배열까지 target의 개수를 검색
 * @param {Array} 조회될 중첩 배열
 * @param {number | string} target 조회값
 * @returns {number} target 개수
 */
function numberOfItems(arr, target){
  let count = 0;
  for (const value of arr) {
	if (Array.isArray(value)) {
      count += numberOfItems(value, target)
    } else if (value === target) {
      count += 1;
    }
  }
  return count;
}
const arr = [123, 'abc', '66', [123, 'bbc'], [123, ['66'], 66, '66']];

console.log(numberOfItems(arr, 123)) // 3
console.log(numberOfItems(arr, '66')) // 3
console.log(numberOfItems(arr, 66)) // 1

0개의 댓글

관련 채용 정보