나머지 매개변수 ...
- 상당수의 자바스크립트 내장 함수는 인수의 개수에 제약을 두지 않는다 .
위 예제 처럼 함수 정의 방법과 상관없이 함수에 넘겨주는 인수의 개수엔 제약이 없다.
함수를 정의할 땐 인수를 두개만 받도록 하고 실제 함수를 호출할 땐 이보다 더 많은 여분의 인수를 전달했지만
에러가 발생하지 않는다 다만 반환 값은 처음 두 개의 인수만을 사용해 계산된다.
위 예제처럼 여분의 매개변수는 그 값들을 담을 배열 이름을 마침표 세 개 ... 뒤에 붙여주면 함수 선언문에 포함 시킬 수 있다 이때 마침표 세 개 ...는 나머지 매개변수들을 한데 모아 배열에 집어넣으라는 의미이다 .
위 예제 처럼 앞 부분의 매개변수는 변수로 그 이외의 매개변수들은 배열로 모을 수도 있다.
이때 주의 할 점은 나머지 매개 변수는 남아있는 인수를 모으는 역할을 하기 때문에 항상 마지막에 있어야 한다.
arguments 변수
arguments 라는 특별한 유사 배열 객체를 이용하면 인덱스를 사용해 모든 인수에 접근할 수 있다
나머지 매개변수는 비교적 최신의 문법이다 과거엔 함수의 인수 전체를 얻어내는 방법이 arguments를 사용하는 것 밖에 없었다 물론 지금도 arguments를 사용할 수 있다 arguments는 유사 배열 객체이면서 이터러블 (반복 가능한) 객체이다
'자바스크립트' 카테고리의 다른 글
[Javascript] - 전역 객체에서 var, let, const (0) | 2022.07.18 |
---|---|
[Javascript] - 렉시컬 환경 (0) | 2022.07.13 |
[Javascript] - 원시값의 메서드 (0) | 2022.07.06 |
[Javascript] - 객체의 정렬 방식 (0) | 2022.07.03 |
[Javascript] - 자바스크립트의 배열은 배열이 아니다 (0) | 2022.07.02 |