웹 개발 메모장

[자바스크립트] 가변 인자 함수 본문

옛날../자바스크립트

[자바스크립트] 가변 인자 함수

도로롱주 2018. 1. 2. 21:14




가변 인자 함수 : 인자가 변하는 함수



다음과 같은 함수가 있다고 합시다.


1
2
3
function calc(a, b) {
    return a + b;
}
cs


인자 2개를 받아 덧셈 연산을 해서 그 값을 반환해주는 함수입니다.


인자 3개를 받아 덧셈 연산을 하고싶으면 추가로


1
2
3
function calc(a, b, c) {
    return a + b + c;
}
cs


위와 같이 정의해서 사용하면 됩니다.


하지만 인자가 몇개가 오던 처리할 수 있게 자바스크립트의 모든 함수는 내부에 기본적으로 arguments 라는 변수가 있는데 인자를 배열로 받아 저장하는 변수입니다.



따라서 다음과 같이 함수를 생성해서 사용할 수 있습니다. 이를 가변 인자 함수 라고 부릅니다.


1
2
3
4
5
6
7
function calc() {
    var sum = 0;
    for(var i in arguments){
        result += arguments[i];
    }
    return sum;
}
cs




Comments