arguments

arguments

ํ•จ์ˆ˜์—๋Š” arguments๋ผ๋Š” ๋ณ€์ˆ˜์— ๋‹ด๊ธด ์ˆจ๊ฒจ์ง„ ์œ ์‚ฌ ๋ฐฐ์—ด์ด ์žˆ๋‹ค. ์ด ๋ฐฐ์—ด์—๋Š” ํ•จ์ˆ˜๋ฅผ ํ˜ธ์ถœํ•  ๋•Œ ์ž…๋ ฅํ•œ ์ธ์ž๊ฐ€ ๋‹ด๊ฒจ์žˆ๋‹ค.

function sum(){ // ๋งค๊ฒŒ๋ณ€์ˆ˜๊ฐ€ ์—†์Œ 
    var i, _sum = 0;    
    for(i = 0; i < arguments.length; i++){ // arguments.length -> 4๊ฐœ 
        document.write(i+' : '+arguments[i]+'<br />');
        //arguments๋Š” ์‚ฌ์šฉ์ž๊ฐ€ ์ „๋‹ฌํ•œ ์ธ์ž๊ฐ€ ๋“ค์–ด์žˆ๋‹ค. 
        _sum += arguments[i]; 
    }   
    return _sum;
}
document.write('result : ' + sum(1,2,3,4)); //์ธ์ž 4๊ฐœ๋ฅผ ์ „๋‹ฌํ•จ 
// result : 10

๋งค๊ฐœ๋ณ€์ˆ˜์˜ ์ˆ˜

๋งค๊ฐœ๋ณ€์ˆ˜์™€ ๊ด€๋ จ๋œ ๋‘๊ฐ€์ง€ ์ˆ˜๊ฐ€ ์žˆ๋‹ค. ํ•˜๋‚˜๋Š” ํ•จ์ˆ˜.length, ๋‹ค๋ฅธ ํ•˜๋‚˜๋Š” arguments.length์ด๋‹ค. arguments.length๋Š” ํ•จ์ˆ˜๋กœ ์ „๋‹ฌ๋œ ์‹ค์ œ ์ธ์ž์˜ ์ˆ˜๋ฅผ ์˜๋ฏธํ•˜๊ณ , ํ•จ์ˆ˜.length๋Š” ํ•จ์ˆ˜์— ์ •์˜๋œ ์ธ์ž์˜ ์ˆ˜๋ฅผ ์˜๋ฏธํ•œ๋‹ค.

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

Last updated