티스토리 뷰
함수에는 arguments라는 변수에 담긴 숨겨진 유사 배열이 있다. 이 배열에는 함수를 호출할 때 입력한 인자가 담겨있다.
function sum(){
var i, _sum = 0;
for(i = 0; i < arguments.length; i++){
document.write(i+' : '+arguments[i]+'<br />');
_sum += arguments[i];
}
return _sum;
}
document.write('result : ' + sum(1,2,3,4));
//0 : 1
//1 : 2
//2 : 3
//3 : 4
//result : 10
자바스크립트는 매개변수가 없어도 에러가 나지 않는다.
자용자가 전달한 인자에 접근할수 있다.
arguments.length 를 이용하여 인자의 개수를 알수있고, 인자의 값을 순차적으로 가져올수도 있다. arguments는 배열이
아니라 객체이다.
매개변수의 수
function zero(){
console.log(
'zero.length', zero.length,
'arguments', arguments.length
);
}
function one(arg1){
console.log(
'one.length', one.length,
'arguments', arguments.length
);
}
function two(arg1, arg2){
console.log(
'two.length', two.length,
'arguments', arguments.length
);
}
zero(); // zero.length 0 arguments 0
one('val1', 'val2'); // one.length 1 arguments 2
two('val1'); // two.length 2 arguments 1
parameter 안에있는 매개변수의 개수를 함수.length 를 이용하여 구할수 있고
arguments.length 를 통해 인자의 개수를 알수있다.
댓글