본문 바로가기
코플릿 기록/JavaScript

고차함수 9번

by 뭉지야 2023. 1. 15.
728x90

#문제

함수와 배열을 입력받아 배열의 각 요소에 함수를 적용했을 때 그 결과가 참인 요소만을 갖는 새로운 배열을 리턴해야 합니다.

for문 사용해라. arr.filter사용금지


#예시

function isOdd(num) {
  return num % 2 === 1;
}

function isEven(num) {
  return !isOdd(num);
}

let output = filterCallback(isOdd, [1, 2, 3, 4]);
console.log(output); // --> [1, 3]

output = filterCallback(isEven, [1, 2, 3, 4]);
console.log(output); // --> [2, 4]

#정답

function filterCallback(func, arr) {
 //배열의 각 요소에 함수를 적용했을때
 //그 결과가 참인 요소만을 갖는 새로운 배열을 리턴해라

  let newArr = [];
 
  for(let i=0; i<arr.length; i++){
    if (func(arr[i]) === true){
    newArr.push(arr[i]) ;
  }

  }
  return newArr;
}
728x90

'코플릿 기록 > JavaScript' 카테고리의 다른 글

고차함수 13번  (0) 2023.01.15
고차함수 10번  (0) 2023.01.15
고차함수 8번  (0) 2023.01.15
고차함수 7번  (0) 2023.01.15
고차함수 6번  (0) 2023.01.15