JavaScript에서 함수를 매개변수로 전달하는 방법의 활용

함수를 만들어 보겠습니다. 이 함수는 첫 번째 매개변수로 배열을 받고, 두 번째 매개변수로 함수를 받습니다. 전달된 함수는 배열의 각 요소에 적용될 것입니다:

javascriptfunction test(arr, func) {
  // 변경된 배열을 반환합니다
}

구현해 봅시다:

javascriptfunction test(arr, func) {
  // 반복문을 실행합니다:
  for (let i = 0; i < arr.length; i++) {
    arr[i] = func(arr[i]); // 각 요소에 함수를 적용합니다
  }
  
  return arr; // 변경된 배열을 반환합니다
}

이 함수를 어떤 배열에 적용해 보겠습니다:

javascriptfunction test(arr, func) {
  for (let i = 0; i < arr.length; i++) {
    arr[i] = func(arr[i]);
  }
  
  return arr;
}

// 숫자 배열을 그 제곱 배열로 변환합니다:
let result = test(
  [1, 2, 3],
  function(num) {return num * num;}
);

console.log(result); // [1, 4, 9]를 출력합니다

함수 호출을 더 우아하게(일반적으로 더 선호되는 방식으로) 작성해 보겠습니다:

javascriptfunction test(arr, func) {
  for (let i = 0; i < arr.length; i++) {
    arr[i] = func(arr[i]);
  }
  
  return arr;
}

// 코드를 더 우아하게 작성합니다:
let result = test([1, 2, 3], function(num) {
  return num * num;
});

console.log(result); // [1, 4, 9]를 출력합니다
Задание 1

제 코드를 보지 않고 동일한 함수 test를 직접 구현해 보세요.

Задание 2

생성한 함수 test를 호출하고, 매개변수로 숫자 배열을 전달하세요. 함수가 이 숫자들의 세제곱 배열을 반환하도록 만드세요.