[JavaScript] 파라미터(Parameter)

Moon·2024년 10월 23일
0

JavaScript | 기초

목록 보기
9/48
post-thumbnail

파라미터(parameter)란 무엇인가?

파라미터는 함수에 입력으로 전달되는 값을 받기 위한 변수다. 함수를 선언할 때 소괄호 안에 작성되는 것이 바로 파라미터다.
이 파라미터는 함수가 호출될 때 전달되는 값을 받아, 함수 내부에서 그 값을 변수처럼 사용할 수 있다.

//함수 선언 
function 함수이름(파라미터) { // 매개변수 = 파라미터(parameter)
    console.log(파라미터); 
}

//함수 호출 
함수이름() // 값 = 인자(argument)

예를들면 배달 갈 때 "여기 치킨 한 마리 배달 좀 해주세요" 이렇게 주문을 받잖아? 여기서 '치킨` 한 마리가 함수한테 주어진 파라미터 같은 거다. 함수는 "아~ 치킨? 오케이!" 하면서 그걸 받아서 처리한다.

// 함수 선언
function 배달(물건) { // '물건'이 파라미터
    console.log(물건 + " 배달 완료!");
}

// 함수 호출
배달("치킨"); // 여기가 인자(치킨) 전달하는 부분!

//console.log 출력: 치킨 배달 완료!

위 코드에서, 물건파라미터이고 치킨인자다. 파라미터는 "내가 무엇이든 받을 준비가 되어있다!"라는 입장이고, 인자는 실제로 전달된 값을 의미한다.

요약하자면:
파라미터는 그냥 함수가 일단 받아둘 자리 표시.
인자는 함수에 진짜로 넘겨주는 값.

그래서 이게 진짜 좋은 게 뭐냐면, 함수를 한 번 만들어 두면 치킨만이 아니라 피자, 햄버거… 뭐든지 배달 시킬 수 있다는 거임. 유연하다고! 👀

파라미터의 개념 예시

파라미터를 사용하면 하나의 함수로 여러 상황을 유연하게 처리할 수 있다. 예를 들어, 인사말을 출력하는 함수를 생각해보자. 파라미터 없이 작성한 함수는 고정된 메시지만 출력한다.

// 파라미터 없이 고정된 인사말 출력
function greet() {
    console.log('Hello, John!');
}

greet();  // 출력: Hello, John!

이 함수는 무조건 'Hello, John!'이라고만 인사말을 출력한다. 그러나 파라미터를 사용하면 이름을 유동적으로 바꿔가며 인사를 할 수 있게 된다.

파라미터를 사용하면, 함수를 호출할 때마다 다른 값을 전달할 수 있다. 이를 통해 함수는 입력에 따라 다양한 동작을 할 수 있게 된다. 다음은 이름을 파라미터로 받아서 유동적인 인사말을 출력하는 함수의 예시다.

// 파라미터로 이름을 받아서 인사말 출력
function greet(name) {
    console.log('Hello, ' + name + '!');
}

greet('Alice');  // 출력: Hello, Alice!
greet('Bob');    // 출력: Hello, Bob!

여기서 name이라는 파라미터가 등장한다. 이 파라미터는 함수를 호출할 때 소괄호 안에 전달된 값을 받는다.
greet('Alice')를 호출하면, 'Alice'라는 값이 name파라미터로 전달되어 console.log() 내부에서 사용된다. 이렇게 파라미터를 활용하면, 함수를 더 유연하게 사용할 수 있다.

파라미터의 역할을 이해하기

파라미터는 함수에 입력값을 전달하기 위한 수단이다.
마치 주방장이 요리할 때 재료가 필요하듯, 함수도 필요한 값이 있으면 파라미터로 받아서 일을 한다.

함수 선언 시에 파라미터를 정의하고, 함수 호출 시에 실제 값을 전달한다. 이렇게 하면 함수는 고정된 값에만 의존하지 않고 어떤 재료가 들어오든 맞춰서 요리(작동)할 수 있게 됨.

함수에서 여러 개의 파라미터 사용하기

간단한 또 다른 예로, 두 숫자를 더하는 함수를 만들어보면. 파라미터로 두 개의 숫자를 받아 그 합을 출력하게 할 수 있다.

// 두 개의 숫자를 받아서 더한 결과를 출력하는 함수
function printSum(a, b) {
    console.log(a + b);
}

// 함수 호출
printSum(10, 5); // 15
printSum(7, 3);  // 10

이 함수에서는 ab라는 두 개의 파라미터를 사용한다. 함수가 호출될 때 ab에는 각각 10과 5, 7과 3이 전달된다.
전달된 값들은 함수 내부에서 변수처럼 사용되며, 그 합을 출력한다.

파라미터 이름의 중요성

파라미터 이름을 의미 있게 짓는 것이 중요하다. 단순히 a, b와 같은 이름 대신, 해당 값이 어떤 의미를 갖는지 알 수 있도록 의미 있는 이름을 사용하는 것이 좋다. 예를 들어, 숫자를 더하는 함수에서는 num1, num2와 같은 이름을 사용하면 훨씬 알아보기 쉽다.

// 두 개의 숫자를 받아서 더한 결과를 출력하는 함수
function printSum(num1, num2) {
    console.log(num1 + num2);
}

// 함수 호출
printSum(10, 5); // 15

이처럼 파라미터 이름을 적절하게 지정하면 함수의 역할이 한눈에 들어온다. 코드 가독성도 좋아져서, 나중에 코드가 복잡해지더라도 쉽게 이해할 수 있다.

여러 개의 파라미터 사용

함수는 여러 개의 파라미터를 받을 수 있지만, 너무 많이 쓰면 "나 다 받으려고 만든 함수임" 하고 욕심을 부리는 것 같아질 수 있다. 필요한 파라미터만 적절히 사용하는 게 좋다.
아래 예시는 이름, 생년월일, 국적, 직업을 파라미터로 받아서 출력하는 함수이다.

// **이름, 생년월일, 국적, 직업**을 파라미터로 받아서 출력하는 함수
function introduce(name, birthDate, nationality, job) {
    console.log("안녕하세요! 제 이름은 " + name + "입니다.");
    console.log("저는 " + birthDate + "에 태어났어요.");
    console.log("국적은 " + nationality + "이고,");
    console.log("현재 직업은 " + job + "입니다.");
}

// 함수 호출: 자기 소개 예시
introduce("홍길동", "1990-01-01", "한국", "개발자");

// 또 다른 자기 소개 예시
introduce("김영희", "1985-05-15", "미국", "디자이너");
// 출력결과
안녕하세요! 제 이름은 홍길동입니다.
저는 1990-01-01에 태어났어요.
국적은 한국이고,
현재 직업은 개발자입니다.

안녕하세요! 제 이름은 김영희입니다.
저는 1985-05-15에 태어났어요.
국적은 미국이고,
현재 직업은 디자이너입니다.

이 예시에서 함수의 파라미터 이름을 잘 정의해두면 함수의 목적을 명확하게 전달할 수 있고, 나중에 함수의 역할을 이해하기 쉽다.

파라미터 활용의 장점

파라미터는 함수를 더 유연하게 만들어 주는 마법 같은 존재다. 단순히 고정된 동작을 하는 함수가 아니라, 입력값에 따라 다르게 작동할 수 있는 멀티플레이어로 만들 수 있다. 덕분에 함수는 다양한 상황에 맞게 재사용할 수 있으며, 코드는 간결하고 효율적으로 변신한다.

예를 들어, 숫자의 제곱을 계산하는 함수를 만들어보자. 이 함수는 입력받은 숫자를 제곱한 결과를 출력한다.

// 숫자를 받아 그 제곱을 출력하는 함수
function square(x) {
    console.log(x * x);
}

square(3);  // 출력: 9
square(5);  // 출력: 25
square(10); // 출력: 100

이 함수는 파라미터 x로 전달된 값을 제곱해서 출력한다. 덕분에 원하는 숫자를 넣기만 하면 바로 제곱값을 얻을 수 있다.
이렇게 다양한 숫자에 대해 자유롭게 제곱을 계산할 수 있으니, 함수가 마치 만능 계산기로 업그레이드된 느낌이다.

정리
파라미터는 함수가 외부로부터 입력값을 받아 처리할 수 있게 해주는 역할을 한다. 덕분에 하나의 함수로 다양한 상황을 처리할 수 있으며, 고정된 값에만 의존하지 않는 유연하고 재사용 가능한 코드를 만들 수 있다.

profile
MOON.DEVLOG

0개의 댓글