JavaScript - 문제 미리보기
문제 697
hard
다음 코드의 실행 결과는?
const myNumbers = [4, 1, -20, -7, 5, 9, -6];
function removeNeg(numbers, callback) {
const myArray = [];
for (const x of numbers) {
if (callback(x)) {
myArray.push(x);
}
}
return myArray;
}
const result = removeNeg(myNumbers, (x) => x >= 0);
console.log(result);
정답: A
이 코드는 배열에서 조건에 맞는 요소만 필터링하는 함수입니다.
1)
2) 콜백 함수
3)
4) 원본 배열
이런 패턴은 JavaScript의
1)
removeNeg
함수는 배열과 콜백 함수를 받습니다2) 콜백 함수
(x) => x >= 0
는 각 요소가 0보다 크거나 같은지 검사합니다3)
for
루프에서 각 요소를 콜백 함수에 전달하여 true
가 반환되면 myArray
에 추가합니다4) 원본 배열
[4, 1, -20, -7, 5, 9, -6]
에서 0 이상인 요소는 4, 1, 5, 9
입니다이런 패턴은 JavaScript의
Array.filter()
메서드와 같은 원리로 동작하며, 콜백 함수를 활용한 함수형 프로그래밍의 좋은 예시입니다.
💡 학습 팁
이 문제를 포함한 JavaScript 과목의 모든 문제를 순차적으로 풀어보세요. 진행상황이 자동으로 저장되어 언제든지 이어서 학습할 수 있습니다.