반응형

arguments 객체 - 매개변수


arguments 객체의 사용법


arguments란 전달인자로 통해 할당되는 일회성 매개변수 이다.

실제로 값이 존재하는것이 아닌, 전달인자에서 전달해주는 값에 의해 일회성으로 사용 되는 변수다.


이전 포스팅에서 자바스크립트는 느슨한 타입체크 라고 하였는데, 매개변수 에서도 상당히 유연하게? 전달인자를 받는다.

이 말은 함수를 호출할때 필요로 하는 매개변수의 수에 맞추지 않아도, 해당 함수를 호출할 수 있다는 것이다.


function argVar(arg1, arg2){

console.log(arg1, arg2)

}


argVar();           // undefined, undefined

argVar(1);          // 1 undefined

argVar(1, 2);       // 1 2

argVar(1, 2, 3);    // 1 2

위의 코드를 보면 argVar() 의 형식으로 argVar 함수를 호출하였다.


함수를 보면, 매개변수로 arg1과 arg2의 매개변수를 필요로 하지만,

아래 호출방식을 보면 전달인자의 수가 달라도 에러를 발생하지 않고 함수를 정상적으로 호출한다.


정리를 하면 다음과 같다.


1. 정의된 함수의 인자보다 적게 함수를 호출할 경우, 넘겨지지 않은 인자에는 undefined 값이 할당된다.

2. 정의된 함수의 인자가 함수의 매개변수보다 많을 경우, 초과된 전달인자는 무시된다.

3. 호출 함수명이 같다면, 매개변수의 수에 상관없이 에러를 발생시키지 않고 호출한다.




반응형

+ Recent posts