JS

가변 매개변수 ...

chaereemee 2024. 3. 10. 13:50

설명

가변 매개변수는 함수에 여러 개의 매개변수를 전달할 수 있도록 하는 기능이다.

JavaScript에서는 이를 구현하기 위해 '...'연산자를 사용한다.

이를 통해 함수 내에서 매개변수를 배열로 처리할 수 있다.

 

[1]

function sample(...items) {
	console.log(items);
}

sample(1, 2);           // [1, 2]
sample(1, 2, 3);        // [1, 2, 3]
sample(1, 2, 3, 4);     // [1, 2, 3, 4]

 

[2]

function sample(a, b, ...c) {
	console.log(a, b, c);
}

sample(1, 2);            // 1 2 []
sample(1, 2, 3);         // 1 2 [3]
sample(1, 2, 3, 4);      // 1 2 [3, 4]

 

[1], [2]의 차이점은 함수 정의 시 가변 매개변수의 위치이다.

 

[1] 코드에서는 가변 매개변수가 함수의 매개변수 목록의 맨 끝에 위치했다.

 

[2] 코드에서는 가변 매개변수가 매개변수 목록 중간에 위치했다.

즉, a, b는 고정 매개변수이고, c는 가변 매개변수이다.

sample(1, 2, 3, 4)를 호출하면 a에는 1, b에는 2, c에는 [3, 4]가 출력된다.