JavaScript 함수의 핵심 전제

발행: (2025년 12월 25일 오후 08:39 GMT+9)
4 min read
원문: Dev.to

Source: Dev.to

이것은 JavaScript에서 함수인가요?

function fiveSquared() {
    return 5 * 5;
}

기술적으로는 맞습니다. 하지만 fiveSquared는 실제 프로젝트에서 기대하는 재사용성이 부족합니다. fiveSquared()를 몇 번 호출하든 항상 25를 반환합니다. 만약 6의 제곱을 계산해야 한다면 새로운 함수(sixSquared)를 작성해야 하죠. 같은 로직을 반복하게 되며 DRY (Don’t Repeat Yourself) 원칙을 위반하게 됩니다.

“세기의 고통”을 없애는 방법

우리는 매개변수—입력값을 위한 자리표시자—를 사용해 동일한 함수를 어떤 값에도 적용할 수 있게 합니다.

function calculateSquare(num) {
    return num * num;
}

이제 함수는 재사용이 가능합니다:

  • calculateSquare(5)25를 반환합니다
  • calculateSquare(6)36을 반환합니다
  • calculateSquare(100)10,000을 반환합니다

로직은 한 번만 작성되고, 어떤 인수와도 함께 호출될 수 있어 코드를 DRY하고 확장 가능하게 유지합니다.

최종 결론

함수를 작성하는 것은 효율적인 개발자가 되기 위한 기본 단계입니다. 좋은 함수는 하드코딩된 값 대신 매개변수를 사용해 유연한 로직을 제공하고, 코드를 다시 작성하지 않아도 재사용할 수 있습니다. 매개변수를 활용하면 반복 작업을 피하고 코드를 깔끔하게 유지할 수 있습니다.

지식 테스트: 함수 챌린지!

  • 하나의 매개변수를 받아 그 숫자를 10배로 반환하는 multiplyByTen 함수를 작성하세요.
  • 매개변수를 선언했지만 로직 안에서 전혀 사용하지 않으면 어떻게 될까요? 여전히 DRY 원칙을 따르는 건가요?
  • 두 개의 매개변수(예: num1num2)를 받아 그 합을 반환하는 함수를 작성하세요.

다음은 무엇인가요?

이 글에서는 매개변수를 사용해 다양한 데이터를 함수에 전달함으로써 코드를 재사용할 수 있게 하는 방법을 배웠습니다.

다음에는 연산 자체를 자리표시자로 만드는 방법을 살펴볼 것입니다. 함수를 인수로 전달함으로써 고차 함수 (Higher‑Order Functions, HOF) 를 만들 수 있으며, 이를 통해 핵심 로직을 바꾸지 않고도 곱셈, 덧셈 또는 다른 연산을 수행할 수 있습니다. 데이터만 바꾸면 코드도 유연하게 바뀔 준비를 해보세요!

Back to Blog

관련 글

더 보기 »

함수와 화살표 함수

함수란 무엇인가요? 간단히 말하면, 함수는 JavaScript의 주요 구성 요소 중 하나입니다. 함수는 코드를 작은…

JS에서 함수, 객체 및 배열.

함수 함수는 특정 작업을 수행하고 재사용할 수 있는 코드 블록입니다. JavaScript에서 함수를 정의하는 방법은 세 가지가 있습니다: 1. Function D...